【SpringBoot】05 探索配置方式 Part1 指定和导入配置的注解

@PropertySource & @ImportResource

@ConfigurationProperties默认从全局配置文件中读取

我们可以拆解出来分成单独的配置文件

【提取Bean配置,和SpringBoot配置解耦】

使用@PropertySource读取指定配置文件

 

要注意的是!如果你在application.yml中保留Bean配置

SpringBoot不会读取你指定的路径的配置文件

会读取这个yml全局配置的参数进行注入

该@PropertySource只能读取properties文件,并且必须配合@ConfigurationProperties使用


@ImportResource

导入Spring配置文件,让配置文件的内容生效

也就是说SpringBoot向下兼容原生Spring的xml配置

在需要运行的类中打上这个注解指定xml配置文件的位置即可被加载进SpringBoot

我们编写一个测试类交给原生xml配置

注册给xml配置

我们什么都不做,检查容器中是否存在这个Bean

结果不出意料,因为我们没有把这个xml配置加载到SpringBoot中

这个@ImportResource就是解决这个问题而存在

【再次测试发现还是false,因为这注解是打给SpringBoot主程序才会有效

也就是说给测试类加载是不起效果的

在我们注解了主程序之后测试,返回true,

说明注解导入其他配置资源必须在主程序才会有效

第二点,该注解一样也可以加载多个配置资源


SpringBoot推荐使用类作为配置加载的容器

这就是Spring的注解配置,要注意的是,Spring的注解还是必须依靠XML的注解驱动开启,才能这么干

而SpringBoot完全注解开发,无xml就能这样注解使用

我们删除之前的xml配置,改用这个类配置

测试是否加载成功

这就是我们在Spring使用的JavaConfig注解实现配置

原文地址:https://www.cnblogs.com/mindzone/p/12852394.html