SpringBoot常用注解

与其明天开始,不如现在行动!

文章目录


SpringBoot常用注解

SpringBoot摒弃了XML配置方式,改为全注解驱动

1 组件注册

  1. @Configuration:配置类,声明该类是定义Bean的地方,取代之前的XML配置文件
  2. @SpringBootConfiguration:配置类,SpringBoot特有的(Springboot项目推荐使用)
  3. @Bean:给容器中放入组件,组件名字默认是方法名,替代之前的Bean标签
  4. @Import:给容器中放入指定类型组件(比如第三方的类),组件名字默认是全类名
  5. @Scope:可以修改组件变为不是单例
  6. @Controller:控制层注解,用来处理用户请求和返回相应视图
  7. @Service:业务处理层注解
  8. @Repository:数据访问层注解
  9. @Component:标识一个类为Spring组件
  10. @ComponentScan:@ComponentScan(basePackages = "com.example")指示Spring框架扫描com.example包及其子包下的组件

步骤:

  1. @Configuration编写一个配置类
  2. 在配置类中,自定义方法给容器中注册组件,配合@Baen
  3. 或使用@Import导入第三方的组件

2 条件注解

如果注解指定的条件成立,则触发指定行为:@ConditionOnXxx

  1. @ConditionOnClass:如果类路径中存在这个类,则触发指定行为
  2. @ConditionOnMissingClass:如果类路径中不存在这个类,则触发指定行为
  3. @ConditionOnBean:如果类路径中存在这个Bean(组件),则触发指定行为
  4. @ConditionOnMissingBean:如果类路径中不存在这个Bean(组件),则触发指定行为

可以放在类上也可以放在方法上

3 属性绑定

将容器中任意组件(Bean)的属性值配置文件 的配置项的值进行绑定

  1. @ConfigurationProperties:声明组件的属性和配置文件哪些前缀开始的项进行绑定
  2. @EnableConfigurationProperties:快速注册组件
    • 场景:用于导入第三方的类,因为别人的包没有@Component声明组件。
    • SpringBoot默认值扫描自己主程序所在的包。如果导入第三方包,即使组件上标注了@Componen和@ConfigurationProperties也扫描不到。因为组件都扫描不进来。

步骤:

  1. 给容器中注册组件
  2. 使用@ConfigurationProperties声明组件和配置文件的哪些配置项进行绑定

💎总结

本文中若是有出现的错误请在评论区或者私信指出,我再进行改正优化,如果文章对你有所帮助,请给博主一个宝贵的三连,感谢大家😘!!!


相关推荐
野蛮人6号几秒前
黑马天机学堂系列问题之域名无法正常使用
java·spring cloud·天机学堂
学计算机的计算基3 分钟前
回溯算法下篇:四道经典题讲透约束剪枝、原地标记、预计算与状态压缩
java·笔记·算法
l134062082358 分钟前
HarmonyOS应用开发实战:小事记 - 多媒体文件上传:@ohos.net.http 的 multipart/form-data 请求构造
后端·华为·harmonyos·鸿蒙系统
小小猪的春天8 分钟前
AI Code Review 例外决策框架:手动忽略警告之前,先回答4个问题
后端·架构
大卫陈11 分钟前
微信小程序虚拟支付实战:从「支付能力被限制」到沙箱调通的全过程
前端·后端
武子康11 分钟前
vLLM 0.25.1:服务没有报错,为什么仍会生成垃圾 Token(5 级正确性门禁 + 自动回滚条件)
前端·人工智能·后端
Conan在掘金12 分钟前
鸿蒙 ArkUI V2 装饰器:@ObservedV2 + @Trace,嵌套对象深层重绘,告别 V1 的「重赋值才更新」
后端
卷无止境13 分钟前
Python 的 exec 与 eval :动态代码执行的能力、风险与工程实践
后端·python
Conan在掘金19 分钟前
鸿蒙 ArkUI V2 装饰器:AppStorageV2,应用级状态存取,告别 V1 的「set/get 手动同步」
后端
霸道流氓气质19 分钟前
SpringBoot中集成阿里云消息队列 ApsaraMQ for RabbitMQ 全面指南
spring boot·阿里云·java-rabbitmq