web.xml执行顺序

来源:互联网 发布:京都自由行 知乎 编辑:程序博客网 时间:2024/05/17 20:35

web.xml执行顺序

引言:启动java web程序的时候,java web会读取配置文件web.xml;读取<listener>和<context-param>两个结点,随后创建servletContext(servlet上下文),并且web中是所有部分共享这个上下文;容器将<context-param>转换为键值对,并交给servletContext,

web.xml 的加载顺序是:ServletContext-> context-param ->listener -> filter -> servlet,而同个类型之间的实际程序调用的时候的顺序是根据对应的 mapping 的顺序进行调用的。

相应配置

一、<display-name>TomcatExample</display-name> 

二、上下文参数

<context-param>        <param-name>contextConfigLocation</param-name>        <param-value>            classpath:spring-mvc.xml            classpath:applicationContext.xml        </param-value>    </context-param>

三、Web 应用描述:给出于此相关的说明性文本 

<disciption>Tomcat Example servletsand JSPpages.</disciption> 
<span style="font-family: Arial; font-size: 14px; line-height: 26px;"><display-name></display-name>定义站台的名称</span>

四、过滤器配置:将一个名字与一个实现javaxs.servlet.Filter接口的类相关联

<filter>        <filter-name>encodingFilter</filter-name>        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>        <init-param>            <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>
五、监听器配置
<!--   需要在普通类中使用request的时候,注入这个监听 -->    <listener>        <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>    </listener>
六、Servlet配置 

基本配置      <servlet>         <servlet-name>snoop</servlet-name>         <servlet-class>SnoopServlet</servlet-class>      </servlet>      <servlet-mapping>         <servlet-name>snoop</servlet-name>         <url-pattern>/snoop</url-pattern>      </servlet-mapping>      高级配置      <servlet>         <servlet-name>snoop</servlet-name>         <servlet-class>SnoopServlet</servlet-class>         <init-param>            <param-name>foo</param-name>            <param-value>bar</param-value>         </init-param>         <run-as>            <description>Security role foranonymousaccess</description>            <role-name>tomcat</role-name>         </run-as>      </servlet>      <servlet-mapping>         <servlet-name>snoop</servlet-name>         <url-pattern>/snoop</url-pattern>      </servlet-mapping>      元素说明        <servlet></servlet>用来声明一个servlet的数据,主要有以下子元素:        <servlet-name></servlet-name>指定servlet的名称        <servlet-class></servlet-class>指定servlet的类名称        <jsp-file></jsp-file>指定web站台中的某个JSP网页的完整路径        <init-param></init-param>用来定义参数,可有多个init-param。在servlet类中通过getInitParamenter(Stringname)方法访问初始化参数        <load-on-startup></load-on-startup>指定当Web应用启动时,装载Servlet的次序。                                    当值为正数或零时:Servlet容器先加载数值小的servlet,再依次加载其他数值大的servlet.                                    当值为负或未定义:Servlet容器将在Web客户首次访问这个servlet时加载它        <servlet-mapping></servlet-mapping>用来定义servlet所对应的URL,包含两个子元素          <servlet-name></servlet-name>指定servlet的名称          <url-pattern></url-pattern>指定servlet所对应的URL  
七、会话超时配置(单位为分钟)

<session-config>         <session-timeout>120</session-timeout>      </session-config> 

八、指定欢迎文件页配置

<welcome-file-list>        <welcome-file>/index/index.action</welcome-file>    </welcome-file-list>
九、错误界面配置

<error-page>    <error-code>404</error-code>    <location>/404.jsp</location>    </error-page>
十、通过异常的类型配置error-page    

<error-page>          <exception-type>java.lang.NullException</exception-type>          <location>/error.jsp</location>      </error-page>   
十一、







0 0
原创粉丝点击