转自:http://412887952-qq-com.iteye.com/blog/2398717
在录制Spring Boot自定义属性的时候,发现@ConfigurationProperties的locations已经过时了,如下代码:
Java代码 :
- @ConfigurationProperties(prefix="email",locations={"classpath:email.properties"})
- public class Email2Properties {
- }
@ConfigurationProperties(prefix="email",locations={"classpath:email.properties"})
public class Email2Properties {
}
如上代码情况locations已经过时,不建议使用了。
版本说明:
出现以上的情况,前提是Spring Boot版本使用的是1.4+以上的版本,如果使用的1.4之前的版本,比如:1.3.3版本的时候,是可以正常使用的。
解决之道:
(1)在@EnableConfigurationProperties
取消激活自定义的配置类
(2)采用@Component
的方式注册为组件,然后使用@PropertySource
来指定自定义的资源目录,如下代码:
Java代码
- @Component
- @ConfigurationProperties(prefix="email")
- @PropertySource(value={"classpath:email.properties"})
- public class Email2Properties {
- }