spring启动加载类,手动加载bean
2024-10-19 08:59:42
方法一:
public final class Assembler implements BeanFactoryPostProcessor {
private static ConfigurableListableBeanFactory beanFactory; // Spring应用上下文环境
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
Assembler.beanFactory = beanFactory;
initMerchant();
}
实现该接口,可以在spring的bean创建之前,修改bean的定义属性。
也就是说,Spring允许BeanFactoryPostProcessor在容器实例化任何其它bean之前读取配置元数据,并可以根据需要进行修改
手动注册bean:
private static ConfigurableListableBeanFactory beanFactory; // Spring应用上下文环境
DefaultListableBeanFactory beanFactory2 = (DefaultListableBeanFactory) beanFactory;
BeanDefinitionBuilder beanMer = BeanDefinitionBuilder.genericBeanDefinition(className);
beanMer.setParentName(beanType);
beanMer.addPropertyValue("mrchCode", corgNum);
beanMer.addPropertyValue("connectionName", beanName);
beanMer.setInitMethodName("init");
beanMer.setInitMethodName("isMerchantOpen");
beanName = beanType + "_" + corgNum;
beanFactory2.registerBeanDefinition(beanName, beanMer.getRawBeanDefinition());
方法二:
public class InitConfig extends HttpServlet implements ServletContextListener { @Override
public void contextDestroyed(ServletContextEvent arg0) {
logger.info("销毁。。。。");
timer.cancel();
}
@Override
public void contextInitialized(ServletContextEvent arg0) {
logger.info("初始化。。。。");
//手动让spring容器管理此类
SpringBeanAutowiringSupport.processInjectionBasedOnCurrentContext(this);
}
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>jsfirst.weixin.InitConfig</listener-class>
</listener>
最新文章
- [转]virtualenv and virtualenvwrapper
- GAT2.0使用文档(组合接口测试)
- hdu 4358 Boring counting dfs序+莫队+离散化
- C#类的一些概念
- 原生javascript开发仿微信打飞机小游戏
- C# ASPX.NET 文件(图片)下载
- HDU3336——KMP算法
- nginx、fastCGI、php-fpm关系梳理(转载参考)
- linux时间同步,ntpd、ntpdate
- TextUtils
- 【转】Linux shell笔记
- You Are the One HDU - 4283 (区间DP)
- vue+webpack项目 url的问题了解
- BZOJ BLO 1123 (割点)【双连通】
- python3 列表的赋值和深浅拷贝
- BZOJ1283 序列(费用流)
- DSO windowed optimization 代码 (4)
- C++STL set
- Python抓取zabbix性能监控图
- java interface 默认值