Springboot开发常见注解一览

注解 用法 常用参数
@Configuration 用于标记类为配置类,其中通过@Bean方法定义Spring管理的组件。它替代XML配置,用Java代码声明对象创建逻辑,并确保单例等容器特性生效。相当于给Spring提供一个"制造说明书"来组装应用部件
@RestController @RestController 用于标记Spring MVC中的控制器类,它将HTTP请求处理方法返回的对象自动转换为JSON/XML格式(通过@ResponseBody实现),专为构建RESTful API设计,省略了传统页面跳转的视图解析过程
@RequestMapping 用于将HTTP请求映射到控制器方法,支持定义URL路径、请求方法(GET/POST等)、请求参数等匹配规则。它是Spring MVC中最基础的路由注解,其他如@GetMapping等均为其衍生组合注解。 value/path:定义url路径映射
@PostMapping 是专门处理HTTP POST请求的快捷注解,结合了@RequestMapping(method = RequestMethod.POST)的功能。它简化了POST请求路由的定义,常用于表单提交或RESTful API中的资源创建操作,使代码更简洁易读
@RequestBody 能够将HTTP请求的正文内容自动映射到Java对象中,减少了手动解析数据的工作量。支持多种数据格式,如JSON、XML等,具体取决于项目中使用的序列化/反序列化库(如Jackson用于JSON)
@Autowired 自动将 Spring 容器中管理的 Bean 实例注入到需要使用的位置,减少了手动获取 Bean 引用的代码
@Service 用于定义一个类属于服务层(Business Logic Layer)
@Transactional 使用 @Transactional 标记的方法会在执行时被 Spring 包裹在一个事务中。如果方法执行成功,事务将被提交;如果发生异常,事务将被回滚。需要在启动类上加注解@EnableTransactionManagement开启注解方式的事务管理
@GetMapping 用于将 HTTP GET 请求映射到特定的处理方法中。它简化了代码,使得处理 GET 请求更加直观和方便。
@RequestParam 用于绑定 HTTP 请求参数到控制器方法参数的注解。它主要用于从 HTTP 请求中提取参数(如查询参数、表单参数等),并将其绑定到方法参数上,支持绑定单个参数、数组、集合等多种类型,满足不同场景的需求。
@DeleteMapping @DeleteMapping 是 Spring Framework 中用于处理 HTTP DELETE 请求的注解。它属于 Spring MVC 的一部分,主要用于将 DELETE 类型的 HTTP 请求映射到具体的控制器方法上,从而实现对资源的删除操作。
@PutMapping @PutMapping 是 Spring Framework 中用于处理 HTTP PUT 请求的核心注解。它是 @RequestMapping(method = RequestMethod.PUT) 的快捷方式,专门用于将 PUT 请求映射到特定的控制器方法。PUT 请求在 RESTful API 设计中主要用于更新或替换完整资源。
@Bean @Bean是Spring框架的核心注解,用于在Java配置类(@Configuration)中显式声明单个Bean的定义。它通过方法创建对象实例,并将返回值交由Spring容器管理
  • Controller类需要添加的注解:@RestController, @RequestMapping("路径")
  • Service实现类需要添加的注解:@Service

请求参数注解区分:

注解 作用 常用请求类型 示例
@RequestParam 获取 URL 查询参数或表单参数 GET/POST /user?id=1
@RequestBody 获取请求体中的 JSON/XML 数据 POST/PUT 请求体:{"name":"Tom"}
@PathVariable 获取 URL 路径中的动态参数 GET/DELETE /user/1
相关推荐
无限大61 分钟前
🎯 算法精讲:二分查找(一)—— 基础原理与实现 🔍
后端
Re2752 分钟前
为什么ThreadLocal内存泄露:从原理到实践
后端
玄妙尽在颠倒间2 分钟前
雪花算法:从 64 位到 128 位 —— 超大规模分布式 ID 生成器的设计与实现
后端·算法
congvee4 分钟前
springboot学习第8期 - springdoc
spring boot
Code季风5 分钟前
Spring 异常处理最佳实践:从基础配置到生产级应用
java·spring boot·spring
回家路上绕了弯5 分钟前
Java 堆深度解析:内存管理的核心战场
java·jvm
Code季风6 分钟前
Spring IoC 容器性能提升指南:启动速度与运行效率优化策略
java·spring·性能优化
谦行15 分钟前
前端视角 Java Web 入门手册 5.10:真实世界 Web 开发—— 单元测试
java·spring boot·后端
hhua012326 分钟前
理解“无界队列”与“有界队列”及其适用场景
java·队列
LZQqqqqo30 分钟前
C# 接口(interface 定义接口的关键字)
java·开发语言·c#