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可以这样写:

 

原文地址:https://www.cnblogs.com/yachao1120/p/10583782.html