尽管我没有使用过此功能,但似乎可以使用spring 4的
@Conditional注解进行 *** 作。
首先,创建一个
Condition类,在其中
ConditionContext可以访问
Environment:
public class MyCondition implements Condition { @Override public boolean matches(ConditionContext context, AnnotatedTypemetadata metadata) { Environment env = context.getEnvironment(); return null != env && "true".equals(env.getProperty("createWebSocket")); }}
然后注释你的bean:
@Bean@Conditional(MyCondition.class)public ObservationWebSocketClient observationWebSocketClient(){ log.info("creating web socket connection..."); return new ObservationWebSocketClient();}
编辑的spring-boot注释
@ConditionalOnProperty也一般实行这一点; 感兴趣的人可以在github上找到用于
Condition评估它的源代码。如果你发现自己经常需要这种功能,建议你使用类似的实现,而不要进行大量的自定义实现。
Condition
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)