类对象获取器上的@Conditionalonexpression
我想知道是否有一种方法可以通过评估在运行时获取其值的类的对象,在运行时使用@conditionalonexpression来启用类。
例如:
@ConditionalOnExpression(#{propertyobject.getexenabled()})class ex1{
}
propertyobject实例在运行时填充了值(在程序开始时说)是否可以实现?
回答:
是的,可以,但是getexenabled()
方法应该是静态的。
喜欢:
@SpringBootApplicationpublic class So44456388Application {
public static void main(String[] args) {
SpringApplication.run(So44456388Application.class, args);
}
public static class Evaluator {
public static boolean getexenabled() {
//your logic here
return true /*false*/;
}
}
@Component
@ConditionalOnExpression("#{T(com.stackoverflow.so44456388.So44456388Application$Evaluator).getexenabled()}")
public static class RichBean {
@PostConstruct
private void init() {
System.out.println("RichBean");
}
}
}
以上是 类对象获取器上的@Conditionalonexpression 的全部内容, 来源链接: utcz.com/qa/404962.html