SpringBoot的注解@Configuration @value 的区别
Posted 识途老码
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot的注解@Configuration @value 的区别相关的知识,希望对你有一定的参考价值。
@ConfigurationProperties(prefix="connection ")//与bean结合,为属性赋值通过指定类名来绑定该类的属性,支持松散语法,从属性文件获取类的属性,默认从全局配置文件中获取值;
我们想把配置文件的信息,读取并自动封装成实体类,这样子,我们在代码里面使用就轻松方便多了
@Component @ConfigurationProperties(prefix="connection") public class ConnectionSettings { private String username; private String remoteAddress; private String password ; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getRemoteAddress() { return remoteAddress; } public void setRemoteAddress(String remoteAddress) { this.remoteAddress = remoteAddress; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
属性松散绑定
表示驼峰式、下划线(_)、短横线(-)
标准方式
person.firstName
方式一
大写用-
person.first-name
方式二
大写用_
person.first_name
三种方式,都可以使用
推荐,属性书写方式
PERSON_FIRST_NAME
@value(" ") 格式 ${ }
可以从配置文件单个获取属性值,只能取出一些简单的值,不能获取map,List等复杂类型的封装
配置文件yml还是properties他们都能获取:
我们只是在某个业务逻辑中需要获取一下配置文件中的某项值,使用@value
如果,专门编写了一个JavaBean来和配置文件进行映射;那我们直接使用@ConfigurationProperties一次性全部获取
以上是关于SpringBoot的注解@Configuration @value 的区别的主要内容,如果未能解决你的问题,请参考以下文章