服务器之家

服务器之家 > 正文

JavaWeb编程 Servlet的基本配置

时间:2019-10-18 13:03     来源/作者:java开发网

学习JavaWeb的人没有不知道Servlet的吧,而要用Servlet就需要在web.xml中进行配置。相信有很多初学者跟我当初一样,对于一些配置参数不是很理解。
下面是一个最基本的Servlet配置:

复制代码代码如下:

<servlet>  
    <servlet-name>MyServlet</servlet-name>  
    <servlet-class>com.Servlet.MyServlet</servlet-class>  
</servlet>  

<servlet-mapping>  
    <servlet-name>MyServlet</servlet-name>  
    <url-pattern>/Servlet</url-pattern>  
</servlet-mapping>  


Servlet的配置包括两部分:
1、<servlet>配置Servlet的名字和完整类路径:
servlet-name是自定义的,就是给Servlet取个名字。
servlet-class是Servlet完整的类,就是从一开始的包一直“.”到该Servlet。
2、<servlet-mapping>是用来截获请求的,包括servlet-name和url-pattern。
servlet-name跟<servlet>中的servlet-name是对应的,两个servlet-name一定要一致,否则会找不到对应的Servlet。
url-pattern是截获请求的规则,当表单提交的时候,会根据特定的规则调用相应的Servlet。下面会具体阐述。
url-pattern大致分为以下几种方式:
1、完全匹配
 如:<url-pattern>/servlet/MyServlet.do</url-pattern>
2、目录匹配
如:<url-pattern>/servlet/*</url-pattern>

 

3、扩展名匹配
如:<url-pattern>*.do</url-pattern>
在web.xml文件中,以下语法用于定义映射:

 l. 以”/'开头和以”/*”结尾的是用来做路径映射的。 
2. 以前缀”*.”开头的是用来做扩展映射的。 
3. “/” 是用来定义default servlet映射的。 
4. 剩下的都是用来定义详细映射的。比如: /aa/bb/cc.action

容器查找规则:
1、容器会首先查找完全匹配,如果找不到,再查找目录匹配,如果也找不到,就查找扩展名匹配。
2、如果一个请求匹配多个“目录匹配”,容器会选择最长的匹配。
例如:servletA的url-pattern为/test/*,而servletB的url-pattern为/test/b/*,此 时访问http://localhost/test/b时,容器会选择路径最长的servlet来匹配,也就是这里的servletB。
注意:”/*.action”这样一个看起来很正常的匹配会错。因为这个匹配即属于路径映射,也属于扩展映射,会导致容器无法判断。
上面讲解的只是Servlet最基本的一个配置,还有很多其他的参数,有兴趣可自行研究,这里就不一一赘述了。

标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部