79.SpringBoot的核心注解

一、SpringBoot的核心注解

  • @SpringBootApplication注解:这个注解标识了一个SpringBoot工程,它实际上是另外三个注解的组合,这三个注解是:
  • @SpringBootConfiguration:这个注解实际就是一个@Configuration,表示启动类也是一个配置类
  • @EnableAutoConfiguration:向Spring容器中导入了一个Selector,用来加载ClassPath下SpringFactories中所定义的自动配置类,将这些自动加载为配置Bean
  • @Conditional 也很关键, 如果没有它我们无法在自定义应用中进行定制开发
    @ConditionalOnBean、
    @ConditionalOnClass、
    @ConditionalOnExpression、
    @ConditionalOnMissingBean等。

二、知识延伸

Spring Boot 最核心的27个注解

@SpringBootApplication:标注一个类是 Spring Boot 应用的主类。

@EnableAutoConfiguration:启用自动配置,根据 classpath 中的 jar 包、项目的依赖和配置,自动配置 Spring Bean。

@Configuration:标注一个类是 Spring 的配置类。

@RestController:标注一个类是 RESTful API 的控制器。

@RequestMapping:用来映射请求的 URL 和处理方法,还可以设置请求的 HTTP 方法、参数、请求头等。

@GetMapping:标注一个方法是处理 GET 请求的方法。

@PostMapping:标注一个方法是处理 POST 请求的方法。

@PutMapping:标注一个方法是处理 PUT 请求的方法。

@DeleteMapping:标注一个方法是处理 DELETE 请求的方法。

@PathVariable:获取 URL 中的参数。

@RequestParam:获取请求参数。

@RequestBody:将请求体中的数据绑定到方法的参数上。

@ResponseBody:将方法返回值作为响应体返回。

@Component:标注一个类是 Spring Bean。

@Service:标注一个类是服务类。

@Repository:标注一个类是数据访问层的组件。

@Autowired:自动装配一个 Bean。

@Qualifier:指定 Bean 的名称。

@Value:获取配置文件中的属性值。

@ConfigurationProperties:将配置文件中的属性值绑定到 Bean 的属性上。

@Conditional:根据条件决定是否创建 Bean。

@Async:标注一个方法是异步方法。

@Scheduled:定时任务。

@Transactional:标注一个方法需要事务管理。

@EnableTransactionManagement:启用 Spring 的事务管理。

@EnableScheduling:启用 Spring 的定时任务。

@EnableAsync:启用 Spring 的异步方法。

相关推荐
IT_陈寒8 小时前
Vite热更新失效?你可能漏了这个配置
前端·人工智能·后端
Leighteen8 小时前
`try-finally` 里的 `return`:为什么 `finally` 会悄悄改掉返回值、吞掉异常
java·开发语言
名字还没想好☜9 小时前
Go 的 time.After 在 select 循环里内存泄漏:定时器堆积原理与 timer.Reset 正确姿势
java·数据库·golang·go·goroutine
SomeB1oody9 小时前
【RustyML入门】1.0. 快速上手
开发语言·后端·机器学习·rust·教程
圆山猫9 小时前
[Virtualization](三):RISC-V H-extension 与 Guest 执行模式
android·java·risc-v
caishenzhibiao9 小时前
期货先行者主图 同花顺期货通指标
java·c语言·c#
史呆芬9 小时前
分布式事务实战:微服务跨服务数据一致性解决方案
java·后端·spring cloud
IT界的老黄牛10 小时前
限流命中后该怎么办:直接丢、阻塞等待、延迟重投三种姿势的取舍
java·rocketmq·redisson·令牌桶·削峰·分布式限流