首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

器皿运行时spring动态加载代理类

2012-11-04 
容器运行时spring动态加载代理类目前项目需要在tomcat运行的时候加载新业务处理的功能,实现的思路如下:1 t

容器运行时spring动态加载代理类

目前项目需要在tomcat运行的时候加载新业务处理的功能,实现的思路如下:

1 tomcat可以支持动态加载,只要把新的class问价考入到相应工程的class文件夹下就能使用

2 由于业务使用的都是spring,所以需要spring能够在与运行的时候加载新的类:经过一系列的研究,找到了方法:

需要往BeanFactory加入一个新的bean的定义,方法如下:

//1 get BeanFactory

DefaultListableBeanFactory factory =(DefaultListableBeanFactory)?WebApplicationContextUtils.getWebApplicationContext(servletContext).getAutowireCapableBeanFactory();

//2 create Bean Definition

AbstractBeanDefinition beanDef = BeanDefinitionReaderUtils.createBeanDefinition(null, businessPara.getBusinessClass(),? WebApplicationContextUtils.getWebApplicationContext(servletContext).getClassLoader());

//3 add Bean Definition to BeanFactory
factory.registerBeanDefinition(businessPara.getServiceName(), beanDef);

热点排行