springboot如何读取自定义配置项

时间:2021-05-02

我们springboot项目有自己默认的配置文件,一般地由application.yml和bootstrap.yml组成,前者是模块的配置,后者是微服务的配置,后台比前者先被框架加载。

我们有时需要自己定义配置,可能不是简单的字符串,它可能是一个对象,对象里有具体的配置段,它也是application.yml的一部分,你可以把自己的代码添加上,当然你也可以新建全新的文件。

例如,有一个配置由name和version组成,我们在application.yml里可以把它定义成project元素下面的,这里的project叫前缀,我们在定义配置实体时用来修饰它。

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 package test.lind.javaLindDay.utilDemo; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.PropertySource; import org.springframework.stereotype.Component; @Component @ConfigurationProperties(prefix = "project") @PropertySource(value = "classpath:config.yml") public class MyConfig { private String version; private String name; public String getVersion() { return version; } public void setVersion(String version) { this.version = version; } public String getName() { return name; } public void setName(String name) { this.name = name; } }

而其中的注解@component表示可以使用@Autowired注入!如果配置里只是一个字符串的项,我们也可以使用@Value来进行注入,如下代码展现了两种

注入的方式。

? 1 2 3 4 5 6 7 8 9 10 11 @RestController public class HomeController { @Autowired MyConfig config; @Value("${lind.name}") String app; @RequestMapping("/") public String Index() { return "HOME=" + config.getName() + "app=" + app; } }

总结

以上所述是小编给大家介绍的springboot如何读取自定义配置项,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:http://www.cnblogs.com/lori/p/8990599.html

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章