zoukankan      html  css  js  c++  java
  • 通过spring工具类获取bean

    package xxx;

     

    import org.springframework.beans.BeansException;

    import org.springframework.beans.factory.NoSuchBeanDefinitionException;

    import org.springframework.context.ApplicationContext;

    import org.springframework.context.ApplicationContextAware;

    import org.springframework.stereotype.Component;

     

    @Component

    public class SpringUtil implements ApplicationContextAware {

        private static ApplicationContext applicationContext = null;

     

        public SpringUtil() {

        }

     

        public void setApplicationContext(ApplicationContext arg0) throws BeansException {

            if (applicationContext == null) {

                applicationContext = arg0;

            }

     

        }

     

        public static ApplicationContext getApplicationContext() {

            return applicationContext;

        }

     

        public static void setAppCtx(ApplicationContext webAppCtx) {

            if (webAppCtx != null) {

                applicationContext = webAppCtx;

            }

        }

     

        /**

         * 拿到ApplicationContext对象实例后就可以手动获取Bean的注入实例对象

         */

        public static <T> T getBean(Class<T> clazz) {

            return getApplicationContext().getBean(clazz);

        }

     

        public static <T> T getBean(String name, Class<T> clazz) throws ClassNotFoundException {

            return getApplicationContext().getBean(name, clazz);

        }

     

        public static final Object getBean(String beanName) {

            return getApplicationContext().getBean(beanName);

        }

     

        public static final Object getBean(String beanName, String className) throws ClassNotFoundException {

            Class<?> clz = Class.forName(className);

            return getApplicationContext().getBean(beanName, clz.getClass());

        }

     

        public static boolean containsBean(String name) {

            return getApplicationContext().containsBean(name);

        }

     

        public static boolean isSingleton(String name) throws NoSuchBeanDefinitionException {

            return getApplicationContext().isSingleton(name);

        }

     

        public static Class<?> getType(String name) throws NoSuchBeanDefinitionException {

            return getApplicationContext().getType(name);

        }

     

        public static String[] getAliases(String name) throws NoSuchBeanDefinitionException {

            return getApplicationContext().getAliases(name);

        }

    }

    原文地址:https://www.cnblogs.com/codechange/p/11238117.html
  • 相关阅读:
    windows 安装 python _ flask
    open-falcon 前端代码在windows上运行
    windows下 安装python_ldap MySQL-python
    rocketmq集群、配置详解和常用命令
    docker仓库管理(9)
    docker镜像管理和dockerfile详解(8)
    docker学习路线图
    docker组件如何协作(7)
    docker核心组件(6)
    docker镜像下载加速(5)
  • 原文地址:https://www.cnblogs.com/jpfss/p/11389814.html
Copyright © 2011-2022 走看看