zoukankan      html  css  js  c++  java
  • 静态获取Bean

    import org.springframework.beans.BeansException;
    import org.springframework.beans.factory.NoSuchBeanDefinitionException;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.ApplicationContextAware;
    /**
    *

    • 静态获取Bean

    */
    public class SpringContextUtil implements ApplicationContextAware {

    private static ApplicationContext applicationContext; 
    // 实现
    @Override
    public void setApplicationContext(ApplicationContext applicationContext)
    		throws BeansException {
    	SpringContextUtil.applicationContext = applicationContext;
    }
    
    public static ApplicationContext getApplicationContext() {
    	return applicationContext;
    }
    
    public static Object getBean(String name) throws BeansException {
    	try {
    		return applicationContext.getBean(name);
    	} catch (Exception e) {
    		e.getMessage();
    		throw new RuntimeException("获取的Bean不存在!");
    	}
    }
    
    public static <T> Object getBean(Class<T> zlass) throws BeansException {
    	try {
    		return applicationContext.getBean(zlass);
    	} catch (Exception e) {
    		e.getMessage();
    		throw new RuntimeException("获取的Bean不存在!");
    	}
    }
    
    public static <T> T getBean(String name, Class<T> requiredType)throws BeansException {
    	return applicationContext.getBean(name, requiredType);
    }
    
    public static boolean containsBean(String name) {
    	return applicationContext.containsBean(name);
    }
    
    public static boolean isSingleton(String name)
    		throws NoSuchBeanDefinitionException {
    	return applicationContext.isSingleton(name);
    }
    
    public static Class<? extends Object> getType(String name)
    		throws NoSuchBeanDefinitionException {
    	return applicationContext.getType(name);
    }
    
    public static String[] getAliases(String name)
    		throws NoSuchBeanDefinitionException {
    	return applicationContext.getAliases(name);
    }
    

    }

  • 相关阅读:
    抓包来看ftp状态码
    socket基础篇
    密码复杂度检查函数
    time模块
    读取日志文件,搜索关键字,打印关键字前5行。yield、deque实例
    装饰器--函数
    yield用法
    字符编码
    pycharm + git实现两台电脑代码同步
    PyCharm常见用法
  • 原文地址:https://www.cnblogs.com/cabinet/p/12839072.html
Copyright © 2011-2022 走看看