Spring MVC 常用的注解

  1. @Controller:用于将一个类标记为 Spring MVC 控制器,处理 HTTP 请求和生成 HTTP 响应。
  2. @RestController :类似于 @Controller,但返回的数据会被自动转换为 JSON 或 XML 格式,通常用于构建 RESTful API。等于@Controller + @ResponseBody
  3. @RequestMapping:用于将请求 URL 映射到控制器方法。可以用在类级别和方法级别,用于指定处理请求的路径和 HTTP 方法。
  4. @GetMapping@PostMapping@PutMapping@DeleteMapping:这些注解分别对应 HTTP 的 GET、POST、PUT 和 DELETE 请求,用于指定特定 HTTP 方法的请求映射。
  5. @RequestParam:用于将请求参数绑定到方法的参数,可以指定参数名、默认值和是否必须存在。
  6. @PathVariable:用于将 URL 中的路径变量绑定到方法的参数。
  7. @RequestBody:用于将请求体中的数据绑定到方法的参数,通常用于处理 POST 请求的 JSON 数据。
  8. @ResponseBody:用于将方法的返回值直接写入 HTTP 响应体,通常用于返回 JSON 数据。
  9. @ModelAttribute:用于将对象绑定到请求域,以便在视图中使用。
  10. @SessionAttribute:用于将属性从 HTTP 会话中绑定到方法的参数或方法的返回值。
  11. @SessionAttributes:用于指定哪些模型属性应该存储在 HTTP 会话中。
  12. @Valid :用于在方法参数上启用验证,通常与 JSR-303 验证(如 @NotNull@Size 等)一起使用。
  13. @InitBinder:用于自定义数据绑定和验证规则,通常用于注册自定义编辑器或验证器。
  14. @ExceptionHandler:用于处理控制器中的异常,可以指定处理特定异常类型的方法。
  15. @ResponseStatus:用于指定处理异常时的 HTTP 响应状态码和原因。
相关推荐
码出财富8 小时前
SpringBoot 内置的 20 个高效工具类
java·spring boot·spring cloud·java-ee
我是小疯子668 小时前
Python变量赋值陷阱:浅拷贝VS深拷贝
java·服务器·数据库
森叶8 小时前
Java 比 Python 高性能的原因:重点在高并发方面
java·开发语言·python
二哈喇子!8 小时前
Eclipse中导入外部jar包
java·eclipse·jar
微露清风9 小时前
系统性学习C++-第二十二讲-C++11
java·c++·学习
进阶小白猿9 小时前
Java技术八股学习Day20
java·开发语言·学习
gis开发9 小时前
【无标题】
java·前端·javascript
Wpa.wk9 小时前
性能测试 - 搭建线上的性能测试环境参考逻辑图
java·经验分享·测试工具·jmeter·性能测试
代码村新手10 小时前
C++-类和对象(中)
java·开发语言·c++
葵花楹10 小时前
【JAVA课设】【游戏社交系统】
java·开发语言·游戏