SpringMVC中的注解驱动

文章目录

SpringMVC中的注解驱动

**<mvc:annotation-driven>**就是注解驱动

一、注解驱动的作用

1.<mvc:annotation-driven> Spring MVC用来提供Controller请求转发,json自动转换等功能。,默认会帮我们注册默认处理请求,参数和返回值的类。

默认底层会集成jackson进行对象或集合的json格式字符串的转换 ,且使用它时候,自动加载ReuestMappingHandlerMapping(处理映射器)****和RequestMappingHandlerAdapter(处理适配器)

在spirng-xml的配置文件中使用<mvc:annotation-driven>替代注解处理器和适配器的配置

当控制器方法中,仅仅用来实现页面跳转,即只需要设置视图名称时,可以将处理器方法使用view-controller标签进行表示

复制代码
<mvc:view-controller path="/" view-name="index"></mvc:view-controller>

注:

当springmvc中设置任何一个view-controller时,其它控制器中的请求映射将全部失效

此时需要再SpringMVC的核心配置文件中开启mvc的注解驱动

复制代码
<mvc:annotation-driven></mvc:annotation-driven>

二、注解驱动的使用场景

1.注册Bean

<mvc:annotation-driven>会自动注册RequestMappingHandlerMapping与RequestMappingHandlerAdapter两个Bean,这是Spring MVC为@Controller分发请求所必需的,并且提供了数据绑定支持,@NumberFormatannotation支持,@DateTimeFormat支持,@Valid支持读写XML的支持(JAXB)和读写JSON的支持(默认Jackson)等功能。

2.数据返回响应

2.1 当我们需要controller返回一个 javabean,list,map等数据的json对象时,可以设定<mvc:annotation-driven />

2.2 静态资源的访问时直到添加了<mvc:annotation-driven/>之后,请求才又能被正确捕捉和处理

c:annotation-driven/>`之后,请求才又能被正确捕捉和处理**

相关推荐
雨中飘荡的记忆34 分钟前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
心之语歌3 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
华仔啊4 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang4 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
用户8307196840824 小时前
spring ai alibaba + nacos +mcp 实现mcp服务负载均衡调用实战
spring boot·spring·mcp
Ray Liang6 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解6 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端
SimonKing10 小时前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean10 小时前
Jackson View Extension Spring Boot Starter
java·后端
Seven9711 小时前
剑指offer-79、最⻓不含重复字符的⼦字符串
java