Spring boot常用注解和作用

Spring Boot 提供了许多注解来简化开发和配置。以下是一些最常用的 Spring Boot 注解及其作用:

  1. @SpringBootApplication

    • 组合注解,用于启动 Spring 应用的自动配置。它包括 @Configuration@EnableAutoConfiguration@ComponentScan
    • 用法:通常放在主类上。
  2. @EnableAutoConfiguration

    • 告诉 Spring Boot 基于类路径中的 jar 包依赖为当前项目进行自动配置。
    • 用法:放在配置类上。
  3. @ComponentScan

    • 用于指定 Spring 扫描组件的位置。
    • 用法:放在配置类上,可以指定扫描的包路径。
  4. @RestController

    • 组合注解,包括 @Controller@ResponseBody,用于定义 RESTful Web Services。
    • 用法:放在控制器类上。
  5. @RequestMapping

    • 用于定义请求映射,将 HTTP 请求映射到特定的处理方法上。
    • 用法:放在处理请求的方法上。
  6. @GetMapping@PostMapping@PutMapping@DeleteMapping

    • 用于处理特定的 HTTP 方法(GET、POST、PUT、DELETE)的请求映射。
    • 用法:放在处理特定 HTTP 方法请求的方法上。
  7. @Autowired

    • 自动导入依赖的 bean。
    • 用法:放在字段、构造器、设置方法和普通方法上。
  8. @Component

    • 标识一个类为 Spring 管理的组件。
    • 用法:放在类上。
  9. @Service

    • 标识一个类为服务层组件。
    • 用法:放在服务类上。
  10. @Repository

    • 标识一个类为数据访问组件,即 DAO 组件。
    • 用法:放在数据访问类上。
  11. @Controller

    • 标识一个类为 Spring MVC 控制器。
    • 用法:放在控制器类上。
  12. @ResponseBody

    • 表示该方法的返回值作为 HTTP 响应的正文返回,而不是跳转到某个视图。
    • 用法:放在方法上。
  13. @RequestBody

    • 用于读取 Http 请求内容,自动将请求内容转换成指定类型的参数。
    • 用法:放在方法参数上。
  14. @RequestParam

    • 用于读取请求参数。
    • 用法:放在方法参数上。
  15. @PathVariable

    • 用于读取 URL 中的占位符参数。
    • 用法:放在方法参数上。
  16. @Value

    • 注入外部配置到字段中。
    • 用法:放在字段上。
  17. @Qualifier

    • 当有多个同一类型的 bean 时,用于指定具体注入哪一个。
    • 用法:放在 @Autowired 注解旁边。
  18. @Configuration

    • 定义配置类,可替换 xml 配置文件。
    • 用法:放在配置类上。
  19. @Bean

    • 在配置类中声明一个 bean。
    • 用法:放在方法上。
  20. @Profile

    • 指定组件在哪个环境的配置下才能被注册到容器中。
    • 用法:放在类或方法上。
  21. @Lazy

    • 延迟加载 bean,只有在第一次使用该 bean 时才初始化。
    • 用法:放在字段或方法参数上。
  22. @Scope

    • 定义 bean 的作用域。
    • 用法:放在方法上。
  23. @PostConstruct@PreDestroy

    • 分别用于在 bean 创建后和销毁前执行的方法。
    • 用法:放在方法上。

这些注解是 Spring Boot 开发中非常核心和常用的,它们极大地简化了配置和开发过程。

相关推荐
论迹复利2 小时前
FreeRTOS 在 RISC-V 上是如何“点火“的 —— 从 main() 到第一个任务的完整链路
java·开发语言·risc-v
张宇Joaquin3 小时前
鲲鹏统一并行加速库KUPL--众核并行能力介绍
java·开发语言·网络
宸津-代码粉碎机3 小时前
AI攻防战升级!基于Spring AI构建Java应用自动免疫安全体系
java·大数据·开发语言·人工智能·python·安全·spring
2601_963749104 小时前
越华环保集团数字化污水治理:端边云采集架构与平台对接实现
java·大数据·架构
朦胧之4 小时前
PostgreSQL 数据库笔记
人工智能·后端
xcLeigh4 小时前
Go入门:整数类型的溢出与安全边界
java·安全·golang
源码宝5 小时前
SpringBoot+Vue2 诊所门诊管理系统,完整前后端源码,可直接部署上线
java·源码·his系统·门诊系统·程序代码·诊所系统·门诊his
yychen_java5 小时前
九:Text-to-SQL 智能数据查询与 Human-in-the-Loop 人机协作
java·人工智能·架构
user_admin_god5 小时前
数据采集/交换系统设计经验
spring boot·spring·策略模式
lhldsg6 小时前
智慧场馆解决方案小程序开发实战:从架构设计到部署指南
java·小程序·uni-app