Conditional spring bean creation

Conditional spring bean creation,第1张

Conditional spring bean creation

尽管我没有使用过此功能,但似乎可以使用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



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5009119.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存