本文摘自PHP中文网,作者清浅,侵删。
web.xml的作用有:1、可以用来初始化配置信息比如欢迎页面;2、命名以及定制url;3、定制初始化参数;4、指定错误处理页面;5、设置过滤器等。
【推荐课程:Java教程】
每个javaEE工程中都有web.xml文件,那么它的作用是什么呢?它是每个web.xml工程都必须的吗? 一个web中可以没有web.xml文件,也就是说,web.xml文件并不是web工程必须的。 web.xml文件是用来初始化配置信息:比如Welcome页面、servlet、servlet-mapping、filter、listener、启动加载级别等。
每个xml文件都有定义它书写规则的Schema文件,也就是说javaEE的定义web.xml所对应的xml Schema文件中定义了多少种标签元素,web.xml中就可以出现它所定义的标签元素,也就具备哪些特定的功能。web.xml的模式文件是由Sun 公司定义的,每个web.xml文件的根元素为<web-app>中,必须标明这个web.xml使用的是哪个模式文件。如:
1 2 3 4 5 6 7 | <? xml version = "1.0" encoding = "UTF-8" ?>
< web-app version = "2.5"
xmlns = "http://java.sun.com/xml/ns/javaee"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
</ web-app >
|
web.xml
的模式文件中定义的标签并不是定死的,模式文件也是可以改变的,一般来说,随着web.mxl模式文件的版本升级,里面定义的功能会越来越复杂,标签元素的种类肯定也会越来越多,但有些不是很常用的,我们只需记住一些常用的并知道怎么配置就可以了。
下面列出web.xml我们常用的一些标签元素及其功能:
1、指定欢迎页面
1 2 3 4 5 6 7 8 | < welcome-file-list >
< welcome-file >index.html</ welcome-file >
< welcome-file >index.htm</ welcome-file >
< welcome-file >index.jsp</ welcome-file >
< welcome-file >default.html</ welcome-file >
< welcome-file >default.htm</ welcome-file >
< welcome-file >default.jsp</ welcome-file >
</ welcome-file-list >
|
注意:指定了2个欢迎页面,显示时按顺序从第一个找起,如果第一个存在,就显示第一个,后面的不起作用。如果第一个不存在,就找第二个,以此类推。
2、命名与定制URL
我们可以为Servlet和JSP文件命名并定制URL,其中定制URL是依赖命名的,命名必须在定制URL前。下面拿serlet来举例:
(1)为Servlet命名:
1 2 3 4 | < servlet >
< servlet-name >servlet1</ servlet-name >
< servlet-class >org.whatisjava.TestServlet</ servlet-class >
</ servlet >
|
(2)为Servlet定制URL
1 2 3 4 | < servlet-mapping >
< servlet-name >servlet1</ servlet-name >
< url-pattern >*.do</ url-pattern >
</ servlet-mapping >
|
3、定制初始化参数
可以定制servlet、JSP、Context的初始化参数,然后可以在servlet、JSP、Context中获取这些参数值。
下面用servlet来举例:
1 2 3 4 5 6 7 8 9 10 11 12 | < servlet >
< servlet-name >servlet1</ servlet-name >
< servlet-class >org.whatisjava.TestServlet</ servlet-class >
< init-param >
< param-name >userName</ param-name >
< param-value >Daniel</ param-value >
</ init-param >
< init-param >
< param-name >E-mail</ param-name >
< param-value >125485762@qq.com</ param-value >
</ init-param >
</ servlet >
|
经过上面的配置,在servlet中能够调用getServletConfig().getInitParameter("param1")获得参数名对应的值。
4、指定错误处理页面
可以通过“异常类型”或“错误码”来指定错误处理页面。
1 2 3 4 5 6 7 8 9 | < error-page >
< error-code >404</ error-code >
< location >/error404.jsp</ location >
</ error-page >
-----------------------------
< error-page >
< exception-type >java.lang.Exception< exception-type >
< location >/exception.jsp< location >
</ error-page >
|
5、设置过滤器
比如设置一个编码过滤器,过滤所有资源
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | < filter >
< description >EncodingFilter</ description >
< filter-name >encodingFilter</ filter-name >
< filter-class >org.springframework.web.filter.CharacterEncodingFilter</ filter-class >
< init-param >
< description >encoding</ description >
< param-name >encoding</ param-name >
< param-value >UTF-8</ param-value >
</ init-param >
</ filter >
< filter-mapping >
< filter-name >encodingFilter</ filter-name >
< url-pattern >/*</ url-pattern >
</ filter-mapping >
|
6、设置监听器
1 2 3 | < listener >
< listener-class >net.test.XXXLisenet</ listener-class >
</ listener >
|
7、设置会话(Session)过期时间
其中时间以分钟为单位,假如设置60分钟超时:
1 2 3 | < session-config >
< session-timeout >60</ session-timeout >
</ session-config >
|
总结:以上就是本篇文章的全部内容了,希望对大家有所帮助。
以上就是web.xml有什么作用的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
web.xml有什么作用
更多相关阅读请进入《web.xml》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » web.xml有什么作用