1,获得spring容器:
import org.springframework.web.context.ContextLoader;
import org.springframework.web.context.WebApplicationContext;
WebApplicationContext wac = ContextLoader.getCurrentWebApplicationContext();
wac.getBean(""); 2,动态加载bean
//将applicationContext转换为ConfigurableApplicationContext
ConfigurableApplicationContext configurableApplicationContext = (ConfigurableApplicationContext) applicationContext;
// 获取bean工厂并转换为DefaultListableBeanFactory
DefaultListableBeanFactory defaultListableBeanFactory = (DefaultListableBeanFactory) configurableApplicationContext
.getBeanFactory();
// 通过BeanDefinitionBuilder创建bean定义
BeanDefinitionBuilder beanDefinitionBuilder = BeanDefinitionBuilder
.genericBeanDefinition(UserService.class);
// 设置属性userAcctDAO,此属性引用已经定义的bean:userAcctDAO
beanDefinitionBuilder
.addPropertyReference("userAcctDAO", "UserAcctDAO");
// 注册bean
defaultListableBeanFactory.registerBeanDefinition("sdfds",
beanDefinitionBuilder.getRawBeanDefinition()); 版权声明:本文为zhou8622原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。