zoukankan      html  css  js  c++  java
  • spring启动加载类,手动加载bean

    方法一:
    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>
     
     
     
     
     
  • 相关阅读:
    codeforces 459C Pashmak and Buses(模拟,组合数A)
    HDU 4639 Hehe(字符串处理,斐波纳契数列,找规律)
    HDU 1671 Phone List(字符处理)
    网页爬虫【原创】【开源】
    asp.net mvc 配合前端js的CMD模块化部署思想,小思路
    [转]阎宏博士的JAVA与模式
    [转]使用设计模式改善程序结构(三)
    [转]使用设计模式改善程序结构(二)
    [转]使用设计模式改善程序结构(一)
    html符号转换
  • 原文地址:https://www.cnblogs.com/bchange/p/9182014.html
Copyright © 2011-2022 走看看