• SpringUtil获取Spring容器对象


    **自己公司使用的简单的SpringUtil,可以使用直接从Spring容器中获取对象.比较方便. 主要就是实现ApplicationContextAware ,学过Spring的都知道,Spring提供一些实现Aware对应的类,来获取对应的信息,比如,

    1. ApplicationContextAware ,会将ApplicationContext 注入进来;
    2. 实现BeanFactoryAware接口的类,能够获取到BeanFactory,
    3. 实现了BeanNameAware的 > 类中,能获取到自己在Spring容器中的属性…**

    注意: 这个工具类,所有实现对应Aware类也必须在spring容器中要不然,Spring不知道谁实现了对应Aware接口.
    简单的SpringUtil类如下:

    /**
     * @author rdd
     */
     @Component
    public class SpringContextUtil implements ApplicationContextAware {
    
        private static ApplicationContext context; //应用上下文环境
    
        @SuppressWarnings("static-access")
        @Override
        public void setApplicationContext(ApplicationContext applicationContext)
                throws BeansException {
            this.context = applicationContext;
        }
    
        public static ApplicationContext getContext() {
            return context;
        }
    
        /**
         * 根据bean name 获取对象
         *
         * @param name
         * @return
         */
        public static <T> T getBean(String name) {
            return (T) context.getBean(name);
        }
        
        /**
         * 根据Class获取对象
         * @param clazz
         * @param <T>
         * @return
         * @throws BeansException
         */
        public static <T> T getBean(Class<T> clazz) throws BeansException {
            return context.getBean(clazz);
        }
    }
    
    世界上所有的不公平都是由于当事人能力不足造成的.
  • 相关阅读:
    使用parted 对大容量盘进行分区
    CENTOS7 修改网卡名称为eth[012...],格式
    docker报错
    docker 存储定义成direct-lvm 模式
    Docker存储方式选型建议
    centos install docker setup centos7 安装docker
    docker centos yum 源
    zip 解压脚本
    IaaS,PaaS,Saas 云服务的介绍
    Codeforces Round #589 (Div. 2) D. Complete Tripartite(模拟)
  • 原文地址:https://www.cnblogs.com/javayida/p/13347102.html
Copyright © 2020-2023  润新知