加载spring上下文 工具类

来源:互联网 发布:专业 知乎 编辑:程序博客网 时间:2024/06/01 11:32

工具类代码如下

package com.hzy.oss.util;



import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;


public class SpringUtils implements ApplicationContextAware{
private static ApplicationContext applicationContext = null;


@Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException{
           if(SpringUtils.applicationContext == null){
              SpringUtils.applicationContext  = applicationContext;
           }
    }


    //获取applicationContext
    public static ApplicationContext getApplicationContext() {
           return applicationContext;
    }
   
    //通过name获取 Bean.
    public static Object getBean(String name){
           return getApplicationContext().getBean(name);
    }
    //通过class获取Bean.
    public static <T> T getBean(Class<T> clazz){
           return getApplicationContext().getBean(clazz);
    }


    //通过name,以及Clazz返回指定的Bean
    public static <T> T getBean(String name,Class<T> clazz){
           return getApplicationContext().getBean(name, clazz);
    }

}


使用代码

SearchItemService searchItemService=(SearchItemService)SpringUtils.getBean("searchItemServiceImp");