springmvc---web.xml的配置文件
来源:互联网 发布:app软件操作说明书 编辑:程序博客网 时间:2024/05/03 06:55
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>springmvc-projects</display-name> <context-param> <param-name>contextConfigLocation</param-name> <param-value> classpath*:applicationContext.xml </param-value> </context-param> <!--Spring ApplicationContext 载入 --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- Support for HiddentHttpMethod --> <filter> <filter-name>hiddenHttpMethodFilter</filter-name> <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class> </filter> <filter-mapping> <filter-name>hiddenHttpMethodFilter</filter-name> <servlet-name>springServlet</servlet-name> </filter-mapping> <!-- Spring MVC Servlet --> <servlet> <servlet-name>springServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/spring-mvc.xml </param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping></web-app>
web.xml加载的优先顺序为:listner----->filter----->servlet。
context-param,它用于向 ServletContext 提供键值对,即应用程序上下文信息。
所以真正的加载顺序应该是:context-param -> listener -> filter -> servlet
重点来看看springmvc相关的配置
<servlet> <servlet-name>springServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/spring-mvc.xml </param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>这里的servlet的这里没有init-param,那么加载的时候会默认去加载[servlet-name]-servlet.xml.就是说如果我这里没有init-param告诉你我的配置文件的地址,那么系统加载的时候会自动找到springServlet-servlet.xml的配置文件,当作springmvc容器初始化的配置文件。
<load-on-startup>1</load-on-startup>
这个参数实际含义是:
1)load-on-startup元素标记容器是否在启动的时候就加载这个servlet(实例化并调用其init()方法)。
2)它的值必须是一个整数,表示servlet应该被载入的顺序
2)当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet;
3)当值小于0或者没有指定时,则表示容器在该servlet被选择时才会去加载。
4)正数的值越小,该servlet的优先级越高,应用启动时就越先加载。
5)当值相同时,容器就会自己选择顺序来加载。
所以,<load-on-startup>x</load-on-startup>,中x的取值1,2,3,4,5代表的是优先级,而非启动延迟时间。
再来看看关于路径映射的配置:
<servlet-mapping> <servlet-name>springServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>注意这里的url拦截是(/)而不是(/*),就是拦截所有的请求,包括静态文件(比如:js,css,jpg等)。其中(/*)配置是错误的,你的请求能够映射到对应的controller上,但是返回的如果是*.jsp的话,同样被拦截了,一直会访问不到资源的。
那么(/)会拦截静态文件请求,如何处理呢?
1)第一种方式就是nginx做跳转。
2)第二种就是激活Tomcat的defaultServlet来处理静态文件。
阅读全文
0 0
- springmvc---web.xml的配置文件
- springMVC web.xml配置文件
- springmvc配置文件:web.xml
- SpringMVC的web.xml配置文件详解
- SpringMVC中web.xml的常用配置文件
- springMVC web.xml配置文件参考
- springMvc的配置文件springmvc.xml
- springmvc配置文件web.xml中/与/*的区别
- Spring配置文件和SpringMVC配置文件 web.xml配置文件 保存自用
- springmvc配置文件web.xml详解各方总结。
- springmvc配置文件web.xml详解各方总结。
- springmvc配置文件web.xml详解各方总结。
- springmvc---springmvc.xml配置文件
- SSM(spring-springmvc-mybatis)整合开发xml配置文件内容springmvc-config.xml,application.xml,web.xml
- WebApp的web.xml配置文件
- tomcat的配置文件web.xml
- web.xml的配置文件讲解
- SSH的web.xml配置文件
- DZY Loves Modification CodeForces
- 二叉排序树浅讲
- 数据库基础知识学习
- Vue Prop使用
- Spring bean的生命周期
- springmvc---web.xml的配置文件
- 基于SSM的RBAC权限系统(5)-利用ajax,JQuery实现动态搜索
- String--引用计数写时拷贝
- java从入门到放弃
- HDU6033 Add More Zero(取对数)
- RN面试要点
- SQL 之 lateral view explode()
- Angular移除不必要的$watch之性能优化
- MFC之CAsyncSocket详解