我们springboot项目有自己默认的配置文件,一般地由application.yml和bootstrap.yml组成,前者是模块的配置,后者是微服务的配置,后台比前者先被框架加载。
我们有时需要自己定义配置,可能不是简单的字符串,它可能是一个对象,对象里有具体的配置段,它也是application.yml的一部分,你可以把自己的代码添加上,当然你也可以新建全新的文件。
例如,有一个配置由name和version组成,我们在application.yml里可以把它定义成project元素下面的,这里的project叫前缀,我们在定义配置实体时用来修饰它。
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来进行注入,如下代码展现了两种
注入的方式。
@restcontroller public class homecontroller { @autowired myconfig config; @value("${lind.name}") string app; @requestmapping("/") public string index() { return "home=" + config.getname() + "app=" + app; } }
总结
以上所述是小编给大家介绍的springboot如何读取自定义配置项,希望对大家有所帮助
如对本文有疑问, 点击进行留言回复!!
现在微服务这么火,你还不了解吗?阿里P8推荐的微服务学习指南
论文笔记:SlowFast Networks for Video Recognition
网友评论