Spring boot Spring Boot@ConfigurationProperties中的占位符
您知道Spring Boot是否支持Spring boot Spring Boot@ConfigurationProperties中的占位符,spring-boot,Spring Boot,您知道Spring Boot是否支持@ConfigurationProperties中的占位符吗? 当我设置spring.boot.admin.client.serviceUrl=http://${server.address}:${server.port}${server.context path}时,它将被绑定到,但spring-boot不会替换占位符 我在文档中没有找到任何关于此的信息。我在@ConfigurationProperties的javadoc中找到: 请注意,与{@code@
@ConfigurationProperties
中的占位符吗?
当我设置spring.boot.admin.client.serviceUrl=http://${server.address}:${server.port}${server.context path}
时,它将被绑定到,但spring-boot不会替换占位符
我在文档中没有找到任何关于此的信息。我在@ConfigurationProperties的javadoc中找到:
- 请注意,与{@code@Value}相反,由于属性值是外部化的,所以不会对SpEL表达式求值
看到这一点我真的很惊讶。您使用的是哪个Spring Boot版本?这是在1.2.0中修复的。我刚刚在1.2.6中测试了它,占位符甚至在使用自定义位置时也被解析:@ConfigurationProperties(prefix=“props”,locations=“classpath:example.properties”)我使用SpringBoot 1.2.5。据我所知,为了提供这种行为,我必须定义位置属性。当我另外使用Spring Cloud Config时,我应该如何定义位置?使用{…}的SpEl和使用${…}的属性占位符是两件不同的事情,所以这并不能回答问题。