首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何搜索和自动注册特定包下的所有bean

如何搜索和自动注册特定包下的所有bean
EN

Stack Overflow用户
提问于 2015-07-08 18:47:51
回答 1查看 308关注 0票数 0

我把x number of beans放在一些base-package say com.mypackage.basepackage下面。

我要做的就是auto-scan这个包,并用BeanDefinitionRegistryPostProcessor将所有的bean注册到ApplicationContext

这就是我想要做的。

代码语言:javascript
运行
复制
public class BeanRegistrar implements BeanDefinitionRegistryPostProcessor
{
	
	@Override
	public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException
	{
	}

	@Override
	public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException
	{
        //loop n-number of times and register all the scanned beans.
		BeanDefinition beanDefinition = new RootBeanDefinition(scannedbeans.class, Autowire.BY_TYPE.value(), true);
		registry.registerBeanDefinition("beanName", beanDefinition);
	}
}

我想要的是在com.mypackage.basepackage上循环,查找beans并注册它们。

我知道我可以用以下命令扫描basepackage

代码语言:javascript
运行
复制
<context:component-scan base-package="com.mypackage.basepackage" />
EN

回答 1

Stack Overflow用户

发布于 2015-07-08 18:51:29

使用ClassPathBeanDefinitionScanner

http://docs.spring.io/spring/docs/3.0.x/javadoc-api/org/springframework/context/annotation/ClassPathBeanDefinitionScanner.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31290428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档