SpringBoot是如何检测到yml文件里面的数据库信息的?
ok,开始:
首先springboot项目的源头是 @SpringBootApplication
而这个注解 是
这个@EnableAutoConfiguration会干什么事情呢?
看名字就知道了 “启用自动配置”;有一本书上是这样写的:它会去classpath下寻找路径META-INF/spring.factories 找到org.springframework.boot.autoconfigure.EnableAutoConfiguration的值,并将其封装到一个List中返回 然后去反射 实例化为@Configuration 注入到我们spring项目中的 IOC容器中;
我们去打开@EnableAutoConfiguration 发现他属于这个包:
package org.springframework.boot.autoconfigure。
这个包下又有个包:jdbc
点进去里面有有一个DataSourceAutoConfiguration.class类
这个类上面有一个@EnableConfigurationProperties(DataSourceProperties.class)
也就是依赖DataSourceProperties.class;
点进去这个DataSourceProperties 就可以看到一些认识的东西了:
看到这个 我们就看到了spring.datasource 为什么我们一般在配置yml文件或者properties文件的时候 前面是以这个开头了。。。默认配置就是这样的。如果不自觉手动配置 必须设置成这样 也就是springboot最重要的一条:“约定大约配置”
然后DataSourceProperties里面定义了这些 驱动名称 url username password;
打个断点进去
发现这里获取到的url 就是 application.yml 或者application.properties里面定义的url了。
对于不喜欢看源码的人来说,嘿嘿就比如我:会有这样一个疑问??
“那就是你他妈怎么知道@ConfigurationProperties(prefix = “spring.datasource”)这个玩意就能找到application.yml 或者application.properties的?”
容我再百度一会
- SpringBoot如何导入自定义配置的yml文件
- SpringBoot如何导入自定义配置的yml文件
- Spring -- 如何在spring中读取properties配置文件里面的信息
- SpringBoot如何导入自定义配置的yml文件
- SpringBoot如何导入自定义配置的yml文件
- SpringBoot如何导入自定义配置的yml文件
- 如何在spring中读取properties配置文件里面的信息
- 如何在spring中读取properties配置文件里面的信息
- 如何在spring中读取properties配置文件里面的信息
- 如何在spring中读取properties配置文件里面的信息
- SpringBoot如何导入自定义配置的yml文件
- SpringBoot如何导入自定义配置的yml文件
- SpringBoot如何导入自定义配置的yml文件
- springboot如何读取配置文件(application.yml)中的属性值
- SpringBoot如何导入自定义配置的yml文件
- Eclipse安装了SpringSource Tool Suite插件后,编辑SpringBoot项目的yml配置文件仍然没有提示信息的解决办法
- spring 配置中,数据库相关信息如何加密放在属性文件中
- SpringBoot如何导入自定义配置的yml文件
- SpringBoot 如何让yml,properties配置文件有提示
- SpringBoot如何导入自定义配置的yml文件