![ca23ac0ec877530711a0cfcecdcdcacb.gif](https://i-blog.csdnimg.cn/blog_migrate/ef3adce7ef1ad3465228ace0b52c060f.gif)
大家好,我是你们的导师,我每天都会在这里给大家分享一些干货内容(当然了,周末也要允许老师休息一下哈)。上次老师跟大家分享了下分布式术语的相关知识,今天跟大家分享定义Configuration Processor读取spring配置的知识。
1 引入maven依赖
<dependency> <groupId>org.springframework.bootgroupId> <artifactId>spring-boot-configuration-processorartifactId> <optional>trueoptional> dependency>
2 spring配置文件
在spring配置文件,xxx.properties或者xxx.yml中添加自定义配置(这里以yml为例)
test: name: spring-boot-configuration-processor
3 创建一个自定义对象
创建一个自定义对象,名字叫什么随意,需要加上注解@ConfigurationProperties(prefix = "test"),这个test,对应着配置文件中的test,而属性name,则对应配置文件中的test下的name。
在这里,我使用了lombok,lombok 和 configuration-processor 是兼容的。
如果没有使用lombok,注意要加上getter和setter。
@Data@ConfigurationProperties(prefix = "test")public class TestModel { private String name;}
4 注册对象的bean
在任意一个configuration文件中,注册这个对象的bean。
@SpringBootApplicationpublic class LeaningApplication { @Bean public TestModel testModel() { return new TestModel(); }}
5 直接使用
直接使用即可。
@RestControllerpublic class HelloWorldController { @Autowired private TestModel testModel; @GetMapping public String hello() { return testModel.getName(); }}
6 得到结果
得到结果:
MockHttpServletResponse: Status = 200 Error message = null Headers = {Content-Type=[application/json;charset=UTF-8], Content-Length=[35]} Content type = application/json;charset=UTF-8 Body = spring-boot-configuration-processor Forwarded URL = null Redirected URL = null Cookies = []
参考来源:https://my.oschina.net/anur/blog/1620579
今天就分享这么多,关于定义Configuration Processor读取spring配置,你学会了多少?欢迎在留言区评论,对于有价值的留言,我们都会一一回复的。如果觉得文章对你有一丢丢帮助,请点右下角【在看】,让更多人看到该文章。
![04fe1db905082f53e26a9bd869df02f1.gif](https://i-blog.csdnimg.cn/blog_migrate/fbd78813675d387371d8ae6da57e6cf0.gif)