zoukankan      html  css  js  c++  java
  • SpringBoot中获取上下文

    在实际开发中,有时候会根据某个bean的名称或class到Spring容器中获取对应的Bean。这里只做个简单的记录,方便后续自查。

    @Component
    public class SpringContextUtils implements ApplicationContextAware {
        private static ApplicationContext applicationContext;
    
        @Override
        public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
            this.applicationContext = applicationContext;
        }
    
        /**
         * 获取Spring的上下文
         * @return
         */
        public static ApplicationContext getApplicationContext(){
            return applicationContext;
        }
    
        /**
         * 获取Spring上下文容器的Bean名称
         * @return
         */
        public static String[] getBeanDefinitionNames(){
            return applicationContext.getBeanDefinitionNames();
        }
    
        /**
         * 根据Bean的名称获取Bean
         * @param name Bean名称
         * @param clazz 需要获取的实体
         * @param <T>
         * @return
         */
        public static <T> T getBean(String name,Class<T> clazz){
            return applicationContext.getBean(name,clazz);
        }
    
        /**
         * 根据Bean的名称获取Bean
         * @param name
         * @return
         */
        public static Object getBean(String name){
            return applicationContext.getBean(name);
        }
    
        /**
         * 根据class获取Bean
         * @param clazz
         * @param <T>
         * @return
         */
        public static <T> T getBean(Class<T> clazz){
            return applicationContext.getBean(clazz);
        }
    
        /**
         * 根据Bean名称获取Class
         * @param name
         * @return
         */
        public static Class<?> getType(String name){
            return applicationContext.getType(name);
        }
    }
  • 相关阅读:
    二维数组中的查找
    浅析Java的Object类
    Alan Turing的纪录片观后感
    近期学习docker遇到的一些问题
    eclipse(STS)安装jd-eclipse插件实现查看API源代码功能
    deepin配置Oracle JDK
    两个有序链表的合并
    Maven 项目中各包单独打成jar包
    一次性密码 && 身份认证三要素
    HTTPS工作流程
  • 原文地址:https://www.cnblogs.com/smallfa/p/15127009.html
Copyright © 2011-2022 走看看