spring-整合springMVC

配置

  • web.xml配置前端控制器

  • 如果不配置 contextConfigLocation 则会去/WEB-INF/路径下查找 servlet 的 “name” -servlet.xml

<!-- 前端控制器 -->
<servlet>
    <servlet-name>springmvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <!-- 如果不配置核心配置文件,就会默认去找/WEB-INF/springMvc-servlet.xml -->
        <!-- 修改配置文件所在路径 -->
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:springmvc.xml</param-value>
    </init-param>
        <!-- 配置tomcat启动就加载优先级,如果不配,则是在第一次访问的时间进行加载 -->
        <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>*.action</url-pattern>
</servlet-mapping>
  • 拦截表达式
表达式 说明
*.action 拦截已.action结尾的URL
/ 截所有,不包括.jsp文件结尾
/* 拦截所有 包括.jsp文件结尾

SpringMvcs核心配置文件

  • 如果没有配置映射器和适配器, 默认每个请求都回去DispatcherServlet.properties这个文件找对应的处理器和适配器来执行,这样会大大的降低系统的访问速度,
    所以我们设置好对应的映射器和适配器,这样就不会去找默认的配置,这样可以提高系统的访问效率
    • : 但是我们也不会这样进行配置, 因为这样配置太固定,如果springMVC进行版本更新,则需要更新配置文件,可以通过配置一个标签来解决这个问题

注解驱动

  • 它的作用的去找最新版本的处理器和适配器,

  • 和注解和驱动没毛的关系,配了这个就不需要配下面的映射器和适配器了

  <mvc:annotation-driven />
  • 注解映射器

    • 对类中标记@ResquestMapping的方法进行映射,根据ResquestMapping定义的url匹配ResquestMapping标记的方法,
      匹配成功返回HandlerMethod对象给前端控制器,HandlerMethod对象中封装url对应的方法Method。
 <!--新版本注解映射器 -->
     <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>
 <!--老版本注解映射器 -->
     <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"  />
  • 注解适配器:注解式处理器适配器,对标记@ResquestMapping的方法进行适配。
<!--新版本注解适配器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>
<!--老版本注解适配器 -->
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"  />

试图解析器

  • 配置视图解析:

    • 纯属是为了开发方便
      InternalResourceViewResolver:支持JSP视图解析
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <!-- viewClass:JstlView表示JSP模板页面需要使用JSTL标签库,所以classpath中必须包含jstl的相关jar 包。此属性可以不设置,默认为JstlView。-->
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
    <!-- prefix:查找视图页面的前缀-->
    <property name="prefix" value="/" />
    <!-- suffix :查找视图页面的后缀-->
    <property name="suffix" value=".jsp" />
</bean>
发布了20 篇原创文章 · 获赞 0 · 访问量 930

猜你喜欢

转载自blog.csdn.net/vistaed/article/details/105558616
今日推荐