我想做类似的事情:
@ConditionalOnProperty("${${appname}.someVal}")
@Controller
public class MyController {...}
我的 yaml 将在哪里:
appname: myapp
myapp:
someVal: true
我该怎么做?
编辑:这不起作用:
@Value("#{'${appname}.someVal'}")
我想做类似的事情:
@ConditionalOnProperty("${${appname}.someVal}")
@Controller
public class MyController {...}
我的 yaml 将在哪里:
appname: myapp
myapp:
someVal: true
我该怎么做?
编辑:这不起作用:
@Value("#{'${appname}.someVal'}")
要评估 SpEL,请使用@ConditionalOnExpression
而不是@ConditionalOnProperty
.
看起来不是很优雅,但它是:
@ConditionalOnExpression("#{environment.getProperty('${appname}.someVal') == 'true'}")
environment
引用了一个 bean,org.springframework.core.env.Environment
它在每个 Spring Boot 应用程序中都可用。