1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" 5 version="4.0"> 6 <!--spring 的核心监听器作用:在web容器(tomcat)启动的时候,创建spring的工厂类对象,把该对象绑定到web容器的上下文(环境) 7 中。 8 之前我们使用spring 框架,第一件事都是创建工厂类对象: 9 ApplicationContext context = new ClassPathXmlApplciationContext("applicationContext.xml"); 10 我们现在使用的是web项目,需不需要创建工厂类对象了?需要创建。 11 什么时候创建工厂类对象。工厂类对象只需要创建一个就够了,在项目启动的时候创建比较合适。 12 --> 13 <listener> 14 <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 15 </listener> 16 <!--- 17 手动指定spring 的主配置文件的位置和名称,如果不指定该参数,则spring会默认从WEB-INF/applicationContext.xml 18 我们之前习惯把spring 的主配置文件放到src下面,所以一般会指定此项。 19 --> 20 <context-param> 21 <param-name>contextConfigLocation</param-name> 22 <param-value>classpath:applicationContext.xml</param-value> 23 </context-param> 24 <!--配置spring mvc的前端控制器 25 作用:拦截指定的请求,交给spring mvc框架进行处理 26 --> 27 <servlet> 28 <servlet-name>spring-mvc</servlet-name> 29 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 30 <!--指定spring mvc的主配置文件的位置和名称 31 如果不指定该参数,spring 会默认从WEB-INF/下加载 [servlet的name]-servlet.xml 32 针对这个例子,生成的配置文件名称就spring-mvc-servlet.xml 33 --> 34 <init-param> 35 <param-name>contextConfigLocation</param-name> 36 <param-value>classpath:spring-mvc.xml</param-value> 37 </init-param> 38 </servlet> 39 <servlet-mapping> 40 <servlet-name>spring-mvc</servlet-name> 41 <!--拦截所有.do结尾的请求,交给spring mvc 处理,如果要拦截所有请求 可以写/*--> 42 <url-pattern>*.do</url-pattern> 43 </servlet-mapping> 44 </web-app>
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xsi:schemaLocation="http://www.springframework.org/schema/beans 5 http://www.springframework.org/schema/beans/spring-beans.xsd"> 6 <!---配置spring mvc 处理器映射器 7 作用: 指定怎么才能找到spring mvc 的控制器Controller 8 Controller是spring mvc 的控制器 ,相当与之前的servlet的代码。 9 之前处理请求都是在servlet中,spring mvc处理请求在控制器里。项目会有很多控制器,到底要找哪一个控制器 处理 10 请求是 11 RequestMappingHandlerMapping这种实现定了以了 通过控制器方法或者类上面的@RequestMapping来找到具体 12 的控制器的方法。 13 --> 14 <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"> 15 </bean> 16 <!--配置spring mvc的处理器适配器 17 作用:定义什么特征的java的类才算是一个合格的控制器。在spring mvc底层有很多的是适配器实现。 18 RequestMappingHandlerAdapter 定义了如果一个类加了一个@Controller的注解,他就算是一个合格的控制 19 --> 20 <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"> 21 </bean> 22 <!--配置spring mvc 默认的jsp的视图解析器 23 在spring mvc中是可以返回多种视图(相当于之前srvlet中的jsp界面) 24 好比默认的jsp ,还可以是json ,还可以是一些模板文件。还可以返回excel,word,pdf等。 25 --> 26 <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 27 <!--配置返回视图的前缀 28 requestDispatch.forward(‘/WEB-INF/jsp/index.jsp‘); 29 requestDispatch.forward(‘/WEB-INF/jsp/user.jsp‘); 30 ... 31 requestDispatch.forward(‘/WEB-INF/jsp/xxx.jsp‘); 32 --> 33 <property name="prefix" value="/WEB-INF/jsp/"></property> 34 <!--配置返回视图的后缀--> 35 <property name="suffix" value=".jsp"></property> 36 </bean> 37 </beans>
原文:https://www.cnblogs.com/yanpingping/p/10940864.html