ps:每次搭建项目都习惯于配置web.xml。作为web段和后台所联系的一个配置,一直认为web.xml为web项目的唯一入口,如果没有只是默认配置了。后来看了一下spring boot和Spring的 WebApplcationlnitializer,才发现web.xml并不做为web.xml的必须,所以我以前的结论也就崩溃了。
后来参考了一下他人微博并作笔记:装载于http://supersun.iteye.com/blog/512266
web.xml文件常用来配置初始化信息,如servlet拦截请求、filter过滤器、listener监听器等。当你的web工程不需要配置这些,或者通过java配置时web.xml就不做为必须的文件来配置你的Application,可以直接通过指定路径或者API进行相应的跳转或者相应文件的加载。
一,自己也收录一些常用的web.xml标签
(1)定义servlet并为servlet定义所要拦截的URL,拦截所有以.do结尾的请求
<servlet>
<servlet-name>servlet1</servlet-name>
<servlet-class>org.whatisjava.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servlet1</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
(2)定义初始化参数,可以定制servlet、JSP、Context的初始化参数,并在servlet、JSP、Context中取到
<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")获得参数名对应的值。
(3)指定错误页面处理,可以通过“异常类型”和“错误码”来指定错误处理页面
<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>
(4)设置编码过滤器或者监听器
<filter>
<filter-name>XXXCharaSetFilter</filter-name>
<filter-class>net.test.CharSetFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>XXXCharaSetFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>net.test.XXXLisenet</listener-class>
</listener>
(5)设置会话(Session)过期时间,其中时间以分钟为单位,假如设置60分钟超时:
<session-config>
<session-timeout>60</session-timeout>
</session-config>