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
相关推荐
花千树-010几秒前
多步骤 ReAct 实战:让 Agent 自主完成航司比价与订票
java·agent·function call·react agent·harness·j-langchain·多步骤推理
databook3 分钟前
从写代码到问问题:2026年,AI如何重构数据科学工作流
人工智能·后端·数据分析
二月龙5 分钟前
Go并发编程避坑指南:如何彻底解决死锁(Deadlock)问题
后端
xcLeigh9 分钟前
飞算 JavaAI 进阶实战:从代码生成到系统架构优化的全流程指南
java·系统架构·代码生成·java开发·飞算javaai炫技赛·javaai·飞算
m0_6948455710 分钟前
CRUD (Nestjsx)部署教程:自动生成RESTful接口
服务器·人工智能·后端·开源·自动化·restful
Go_error27 分钟前
Go 并发控制 errgroup.Group
后端·go
希望永不加班38 分钟前
SpringBoot 事件机制:ApplicationEvent 与监听器
java·开发语言·spring boot·后端·spring
IVAN不想说话1 小时前
为什么 Karpathy 的「LLM Wiki」突然火了?
后端
Nyarlathotep01131 小时前
自动内存管理(2):垃圾收集器与内存分配策略
java·jvm·后端
却话巴山夜雨时i1 小时前
互联网大厂Java面试实录:技术栈解析与场景剖析
java·大数据·spring boot·spring cloud·微服务·ai·面试