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 开发中非常核心和常用的,它们极大地简化了配置和开发过程。

相关推荐
程序猿DD4 小时前
OctaFuse Gateway 2.15.0:MCP 聚合、向量 Embeddings 与官方目录同步
后端·agent
蛋蛋的就会顺顺的6 小时前
hot100 p0——栈,贪心算法,动态规划
java·前端·javascript·算法·leetcode·力扣
余槐i6 小时前
PostgreSQL 函数索引报错 must be immutable:3种绕法与代价
数据库·后端·sql·postgresql·性能优化
需要8267 小时前
Spring Bean 生命周期:从实例化到销毁的完整钩子
java·后端·spring
小 黄 鸡7 小时前
HashMap 面试必会知识点详解(JDK 8)
java·面试·职场和发展
凤山老林8 小时前
Spring Boot 接入国密 SM2/SM3/SM4 的一些实践记录
spring boot·后端·python
伯恩bourne9 小时前
Spring Boot Bean 注册的两种方式:@Component 家族 vs @Configuration + @Bean
java·spring boot·后端
张彦峰ZYF9 小时前
停顿短不等于延迟低:G1、ZGC 与低延迟服务的目标分野、代价账本与选型标定
后端·回收暂停、应用停止总时长·到达安全点、分配停滞·屏障吃吞吐、并发线程吃核心·并发窗口吃堆余量·分区式靠挑回收集兑现目标·染色指针式不支持压缩引用
silvamux_9 小时前
curl 测试 OpenAI 兼容 API 的完整流程
java·人工智能·缓存·ai·oneapi
pride.li10 小时前
第03章 Python 教程-基础语法:注释与变量
服务器·前端·后端·python·算法·计算机视觉