I have a properties class below in my spring-boot project.
@Component
@ConfigurationProperties(prefix = \"myprefix\")
public class MyProperties {
private Str
Check if property1 was set using a @PostContruct in your MyProperties class. If it wasn't you can assign it to another property.
@PostConstruct
public void init() {
if(property1==null) {
property1 = //whatever you want
}
}
In spring-boot 1.5.10 (and possibly earlier) setting a default value works as-per your suggested way. Example:
@Component
@ConfigurationProperties(prefix = "myprefix")
public class MyProperties {
@Value("${spring.application.name}")
protected String appName;
}
The @Value
default is only used if not overridden in your own property file.