zoukankan      html  css  js  c++  java
  • spring mvc配置

    一、在web.xml中配置spring的核心监听器和spring mvc的前端控制器

     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>

    二、配置spring-mvc.xml的主配置文件

     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>

    三、spring mvc简化配置

     

  • 相关阅读:
    【并发编程】并发编程随笔索引
    主题记录
    Java技术栈思维导图
    【ES 6.5.4 】ElasticSearch知识点
    Logstash Oracle同步设置
    【ES】【Reference 7.8 译】官方文档Mapping说明
    【ES】【Java High Level REST Client】官方索引和文档操作指导
    【ES】JAVA集成ES与基本操作及官方查询指导
    【实践】Effective Java实践总结
    【MyBatis】Spring集成MyBatis示例
  • 原文地址:https://www.cnblogs.com/yanpingping/p/10940864.html
Copyright © 2011-2022 走看看