zoukankan      html  css  js  c++  java
  • SpringMVC-注解映射器和适配器_20190323

    1 注解映射器和适配器
     
    1.1 注解映射器
    spring3.1之前默认加载映射器是
    org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping,3.1之后要使用:
    org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping
     
    在springmvc.xml中配置RequestMappingHandlerMapping:
    使用RequestMappingHandlerMapping需要在Handler 中使用@ontroller标识此类是一个控制器,使用@RequestMapping指定Handler方法所对应的url。

    1.2 注解适配器
    spring3.1之前默认加载映射器是
    org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter,3.1之后要使用:
    org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter
     
    RequestMappingHandlerAdapter,不要求Handler实现任何接口,它需要和RequestMappingHandlerMapping注解映射器配对使用,主要解析Handler方法中的形参。

        <!-- 注解映射器 -->
            <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>
            <!-- 注解适配器 -->
            <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean>
            
            <!-- 使用mvc的注解驱动可以代替 上面声明的两个适配器  映射器 -->
            <mvc:annotation-driven></mvc:annotation-driven>
    

      

    1.3 注解开发Hanlder
    访问:http://localhost:8080/Springmvc/queryItems.action

    1.4 配置Handler


     
    建议使用组件扫描,组件扫描可以扫描@Controller、@Service、@component、@Repsitory

    在这说一下视图解析器:
    在上面可以看到,设置viewname的时候是jsp的全路径
    因为配置视图解析器的时候是这样子配置的:
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"></bean>
    但是下面的配置直接写逻辑视图名就好了:
    真正的视图=前缀+逻辑视图名+后缀

    viewname可以这样写:

     

  • 相关阅读:
    python uuid
    linux 修改时区
    Nginx 缓存命中率
    MongoDB oplog 详解
    MongoDB 复本集搭建
    复制集简介
    解决Python2.7的UnicodeEncodeError: 'ascii' codec can't encode异常错误
    MongoDB 介绍
    python virtualenv
    Docker Compose 模板文件 V2
  • 原文地址:https://www.cnblogs.com/yachao1120/p/10583782.html
Copyright © 2011-2022 走看看