Spring MVC 常用注解
Spring MVC怎么使用在Spring MVC快速搭建初体验进行了体验,那么Spring MVC就是什么?不得不先说下什么是MVC及其与三层架构是什么关系。
Spring MVC与普通的Servelet本质区别是什么在实现一个自定义MVC中有清晰的比较。
那MVC和三层架构有什么关系呢?实际上MVC只存在三层架构的表现层。M实际上就是数据模型,是包含数据的对象;同时在Spring MVC里,有一个专门的类叫Model,用来和View之间的数据交互、传值;View值的视图页面View,包含JSP等;C当然就是控制器(@Controller标记的类)。
Spring MVC常用注解:
配置类:
@EnableWebMVC,作用于配置类(@Configuration标记)
其直接import了DelegatingWebMvcConfiguration类,进行了一些默认配置,可参考Spring高级特性之一: Aware之ApplicationContextAware - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)关于Aware介绍:
控制类
@Controller,Spring相关介绍中已经介绍过,但是也有区别:
Spring MVC针对Controller提供了两个注解@Controller和@RestController。当在一个Controller类中添加了@RestController注解时,该类中所有使用了@RequestMapping的方法就会返回响应体(Response body)。如果使用的是@Controller注解,则是会将HTML部分的代码也一起返回给调用者;如果不想将HTML中部分代码一并返回,可以使用@ResponseBody来达到同样的目的。
需要特别指出的是,在声明普通Bean的时候,使用@Component、@Service、@Repository、@Controller是同等的,因为其都组合了@Component元注解,只是在SpringMVC声明控制器Bean的时候,只能使用@Controller或者@RestController。
@RequestMapping,url映射
@RequestMapping注解时用来映射Web请求(访问路径和参数)、处理类和方法的。其可以使用在方法和类上,如果使用在类上,那么该类中所有注解的方法都会继承类中所声明的属性(路径)。其还有两个简化的注解@GetMapping和@PostMapping,分别处理Get和Post请求。
@ResponseBody,响应
参考Spring MVC参数绑定(如何接收请求参数及返回参数) - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)中使用。
@RequestBody,请求
此注解放置在参数前,参考Spring MVC参数绑定(如何接收请求参数及返回参数) - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)中使用。
@PathVariable
其种类接收路径参数。如/news/001,可以接收001作为参数,此注解放置在参数前。
@RestController
参考@Controller。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?