首页 > 其他分享 ><mvc:annotation-driven/>使用介绍

<mvc:annotation-driven/>使用介绍

时间:2024-07-08 10:19:03浏览次数:1  
标签:Spring 使用 介绍 driven MVC mvc 注解 annotation

mvc:annotation-driven/ 是 Spring MVC 中的一个配置元素,它用于简化和加速 Spring MVC 应用的配置,尤其是那些使用注解的控制器。当你在 Spring MVC 配置文件中添加了 mvc:annotation-driven/ 元素时,Spring 会自动注册一系列的消息转换器(message converters)、数据绑定器(data binders)、验证器等必要的组件来支持注解驱动的控制器。

  • 使用介绍
  1. 添加依赖:
    确保你的项目中包含了 Spring MVC 的相关依赖,以及可能需要的消息转换器、验证等功能的依赖。

  2. 配置 Spring MVC:
    在 Spring MVC 的配置文件(通常是 spring-mvc-servlet.xml 或类似的名称)中,添加 mvc:annotation-driven/ 元素。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd
       http://www.springframework.org/schema/mvc
       https://www.springframework.org/schema/mvc/spring-mvc.xsd">

    <!--组件扫描...-->
    <!--视图解析器-->

    <!--配置视图控制器,不需要处理业务逻辑,只是单纯的通过访问http://xxxx/test跳转到test页面,可以使用该注解-->
    <mvc:view-controller path="/test" view-name="test"/>

    <!-- 使用了mvc:view-controller,需要开启注解驱动-->
    <mvc:annotation-driven/>

    <!-- 其他配置 ... -->
</beans>
  1. 自动注册组件:
    消息转换器(Message Converters):用于在 HTTP 请求和响应之间转换 Java 对象。Spring MVC 会自动注册一些常见的消息转换器,如 MappingJackson2HttpMessageConverter(用于 JSON)和 StringHttpMessageConverter(用于字符串)。
    数据绑定器(Data Binders):用于将请求参数绑定到控制器方法的参数上。Spring MVC 会自动注册数据绑定器,并处理类型转换、格式化、验证等任务。
    异常处理器(Exception Handlers):用于处理控制器方法抛出的异常。你可以使用 @ExceptionHandler 注解来定义异常处理器。
    验证器(Validators):用于验证控制器方法的参数。你可以使用 JSR 303/380 注解(如 @NotNull, @Size 等)来进行验证,Spring MVC 会自动处理这些验证。

  2. 使用注解:
    在控制器中,你可以使用如 @RequestMapping, @Controller, @GetMapping, @PostMapping 等注解来定义请求映射和处理方法。这些注解将替代传统的 XML 配置方式。

  3. 注意事项:
    使用 mvc:annotation-driven/ 时,不需要再手动配置消息转换器、数据绑定器等组件,除非你有特殊的需求。
    如果你的项目需要支持特定的消息格式(如 XML),你可能需要手动注册相应的消息转换器。
    mvc:annotation-driven/ 还支持自定义的消息转换器、数据绑定器、异常处理器等组件的注册,以满足特定的需求。
    使用 mvc:annotation-driven/ 通常还需要配置 mvc:resources 来指定静态资源的位置,以便 Spring MVC 能够正确地处理静态资源的请求。
    总之,mvc:annotation-driven/ 是 Spring MVC 中一个非常有用的配置元素,它简化了注解驱动的控制器的配置,并自动注册了必要的组件来支持注解驱动的控制器。

标签:Spring,使用,介绍,driven,MVC,mvc,注解,annotation
From: https://www.cnblogs.com/DuWenjie/p/18289412

相关文章

  • datax使用
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、datax的使用流程二、我踩的坑1.json格式相关2.mysql配置3.我自己蠢总结前言datax的使用流程和本人踩的坑一、datax的使用流程以mysql->mysql为例datax使用流程(macOS版本官网下......
  • 介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
    Docker是一种开源的容器化平台,用于构建、部署和管理应用程序。它采用了轻量级的虚拟化技术,允许将应用程序及其依赖包装在一个独立的容器中,以便于在不同的环境中运行。Docker的主要优势包括:1.轻量级和快速启动:Docker容器与传统虚拟化相比更轻量级,可以在几秒钟内启动和停止。......
  • 新知识get,vue3是如何实现在style中使用响应式变量?
    前言vue2的时候想必大家有遇到需要在style模块中访问script模块中的响应式变量,为此我们不得不使用css变量去实现。现在vue3已经内置了这个功能啦,可以在style中使用v-bind指令绑定script模块中的响应式变量,这篇文章我们来讲讲vue是如何实现在style中使用script模块中的响应式变量......
  • centos8(linux): 安装使用supervisor管理laravel队列
    一,什么是supervisorSupervisor是一个进程控制系统,它使用户能够监视和控制类unix操作系统进程。它通过提供基于配置或事件启动、停止和重新启动进程的机制,帮助管理应该在系统中连续运行的进程。对于需要控制和监视Linux或其他类unix操作系统上多个进程的状态的开发人员和系统管理......
  • 生物医学中常常使用的光源
    在生物医学中常常使用的光源种类丰富,主要包括以下几类:激光(Laser):二氧化碳激光:用于切割和烧灼组织。钇铝石榴石(YAG)激光:用于眼科、牙科和皮肤科手术。氩离子激光:用于眼科手术和医学成像。发光二极管(LED):用于光疗,比如治疗新生儿黄疸和皮肤疾病。広泛用于显微镜照明和成像......
  • postman入参使用自增编号,当前时间
    一、postman工具请求->Scripts->pre-requests,填写代码1)自增编号//先设置一个初始值为环境变量,每次都取最新的varcount=pm.environment.get("count");num_new=Number(count)+Number(1);pm.environment.set("count",num_new);2)获取当前的时分//获取小时和分钟varh......
  • 01、基础介绍
    Kubernetes介绍和各组件盘点01、K8S总览Kubernetes(K8s),用于自动部署、扩容、缩容和管理容器化应用程序的开源系统。它将组成应用程序的容器组合成逻辑单元,以便于管理和服务发现。Kubernetes源自Google15年生产环境的运维经验,同时凝聚了社区最佳创意和实践。简单讲,K8s就是一......
  • 关于Qt是否免费使用的问题
    如果公司用Qt开发闭源商业桌面软件,在Windows/Mac/Linux上,可以使用动态库链接方式,遵循LGPL协议,是不用付费的,也不用开源你的代码。只需在你的商业软件的about等一些小角落,说明你使用了Qt,遵循LGPLV3协议即可。那商业付费什么意思呢?就是指的你使用静态库链接的方式,......
  • 在 Rider 里如何使用Jetbrains AI Assistant
    aiassistant激活成功后,如图aiassistant渠道:https://web.52shizhan.cn/activity/ai-assistant在去年五月份的GoogleI/O2023上,Google为AndroidStudio推出了StudioBot功能,使用了谷歌编码基础模型Codey,Codey是Google的基础编码模型,是PaLM2的后代。它是......
  • Github Copilot登录使用,很稳定的chat,不妨试试
    GithubCopilot代码补全等功能,提高写代码的效率获取地址:https://web.52shizhan.cn/activity/copilot如果之前是激活器激活的,请到环境变量里删除相关的copilot配置。①发你注册的github账号的邮箱或用户名给客服,客服邀请你进入组织时会发送一封邮件到你注册github的邮箱......