SpringBoot

配置优先级

SpringBoot中支持三种格式的配置文件

若三个类型的配置文件同时出现他们的优先级从上往下依次是

SpringBoot除了支持配置文件属性配置,还支持Java系统属性和命令行参数的方式进行属性配置。

-D配置项的名字=配置项的值 -D表示这是java系统属性

在IDEA中可以这样使用

总的来说配置优先级命令行属性>Java系统属性>配置文件

在运行Jar包的时候可以这样配置命令行属性和java系统属性

Bean管理

bean作用域

Spring支持五种作用域,后三种在web环境才生效

要声明Bean的作用域就需要添加@Scope注释


单例和多例Bean的使用场景

无状态的意思是此类中不需要保存数据,有状态则反之

第三方Bean

如果要管理的bean对象来自于第三方〈不是自定义的),是无法用@Component及衍生注解声明bean的,就需要用到@Bean注解。启动类

也就是说在装配的时候省略了Autowrited注解不推荐在启动类中声明Bean,推荐定义一个配置类在配置类中定义Bean

SpringBoot原理

起步依赖

是通过依赖传递,引入一个starter依赖自动引入其它的

自动配置

SpringBoot的自动配置就是当spring项目启动后,一些配置类、bean对象就自动存入到了IOC容器中,不需要我们手动去声明,从而简化了开发,省去了繁琐的配置操作。

第一种方法

如果想要实现自动注入第三方的包(里面的类要有@Component注解)就需要添加扫描范围,将需要注入的包添加进去

第二种方法

使用import注解

导入实现了ImportSelector接口的实现类

直接使用@enable注解,一般来说第三方会帮你封装好要导入的类

相关推荐
极客先躯10 分钟前
高级java每日一道面试题-2026年04月04日-实战篇[Docker]-如何排查容器存储挂载失败的问题?
java·运维·docker·容器·高级面试
Hesionberger14 分钟前
动态规划与二分法破解最长递增子序列
java·数据结构·python·算法·leetcode
CodeStats25 分钟前
【Linux IO】从文件描述符到硬件中断:Linux IO 系统底层完全拆解
java·linux·开发语言·io·socket
大阿明30 分钟前
C++智能指针与RAII机制精讲:彻底根治内存泄漏与野指针
java·jvm·c++
一生了无挂33 分钟前
C++面向对象核心精讲:类、对象、封装、权限与生命周期全解析
java·jvm·c++
aaPIXa62234 分钟前
C++ 用 Claude Code 的 defending-code-reference-harness:C/C++ 内存漏洞自动发现与修复 Pipeline
java·c语言·c++
她说..36 分钟前
Apache Commons Lang3 Pair 完整版实战详解
java·spring·java-ee·apache·springboot
砍材农夫44 分钟前
redis|spring-boot redis geo|附近定位功能
java·spring boot·redis
满怀冰雪1 小时前
第29篇-状态压缩DP-当状态很多时如何降维优化
java·算法·动态规划
weixin_446729161 小时前
javaweb--文件上传
java