zoukankan      html  css  js  c++  java
  • 通过BeanFactoryPostProcessor来获取bean

    一、现在我们很多时候都在spring的容器中,进行bean的提取和操作,但是配置里面首先需要扫描相应的包来实现相关bean的注入

      但是问题来了。如果我们在另外一个线程需要用的时候,并且没有配置扫描该类。那么手动去获取bean就很有必要的。

    二、这里是我学习到的一种bean的获取和处理方式

    三、需要的包spring3.0以后

        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-webmvc</artifactId>
          <version>4.3.9.RELEASE</version>
        </dependency>

    四、实现BeanFactoryPostProcessor接可以了,会重写一个方法

    @Component
    public class SpringUtil implements BeanFactoryPostProcessor {
    
        private static ConfigurableListableBeanFactory beanFactory;
    
        public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
            this.beanFactory = beanFactory;
        }
    
        public static Object getBean(String name) {
            return beanFactory.getBean(name);
        }
        public static <T> T getBean(Class<T> clazz){
            return beanFactory.getBean(clazz);
        }
    }

    这个方式在启动以后,可以根据具体的名称来实现bean的获取和使用。

    主要是方便自己管理和使用

  • 相关阅读:
    学习路径_Linux
    学习路径_stm32
    大小端判断
    linux下dbg
    vs code使用技巧实际总结
    书单(updating...)
    [转]单点登录原理
    [转]nginx基本配置与参数说明
    [转]linux 网络配置 (配置/etc/sysconfig/network-scripts/ifcfg-ethx)
    [转]nginx的安装与使用
  • 原文地址:https://www.cnblogs.com/ll409546297/p/7232693.html
Copyright © 2011-2022 走看看