gpt4 book ai didi

java - 如何验证 bean 实例是否已连接?

转载 作者:行者123 更新时间:2023-11-30 03:45:42 26 4
gpt4 key购买 nike

我正在创建一个小型框架,提供一些abstract使用库时必须实现的基类。

如何创建一个验证例程来检查是否确实所有类都已实现?

我想我也许可以使用 @ConditionalOnMissingBean spring-boot 的,但到目前为止没有任何作用。无论如何,我的目标是:

@Configuration
@EnableAutoConfiguration
public class AppCfg {
@ConditionalOnMissingBean(BaseCarService.class) //stupid exmaple
public void validate() {
System.out.println("MISSING BEAN!!");
}
}

//must be implemented
public abstract BaseCarService {

}

我怎样才能实现这个目标?

最佳答案

当你的上下文已经初始化时(例如从实现了ContextLoaderListener的bean),你可以调用ApplicationContext.getBeansOfType(BaseCarService.class)来执行此操作,即类似于以下:

public class BeansValidator impelements ContextLoaderListener {
public void contextInitialized(ServletContextEvent event) {
if (ApplicationContext.getBeansOfType(BaseCarService.class).isEmpty()) {
// print log, throw exception, etc
}
}
}

关于java - 如何验证 bean 实例是否已连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25767533/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com