Spring工具类,提供取得Bean的方法,方便单元测试

Spring工具类,提供取得Bean的方法,方便单元测试

import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;

/**
* Spring工具类,提供取得Spring配置文件中定义的Bean的方法<br>用于单元测试
* @author http://hi.baidu.com/rascal_hu
*
*/
public class SpringUtil {
/** 唯一实例 */
private static SpringUtil INSTALL = null;
/**Spring工厂接口*/
private BeanFactory beanFactory = null;
/** Spring配置文件 */
private static final String SPRING_CFG = "file:WebRoot/WEB-INF/spring-*.xml";

/** 私有构造器 */
private SpringUtil() {
}

/**
* 取得类的唯一实例
* @return
*/
public synchronized static SpringUtil getInstance() {
   if (INSTALL == null) {
    INSTALL = new SpringUtil();
   }
   return INSTALL;
}

/**
* 取得BeanFactory
*/
private synchronized BeanFactory getBeanFactory() {
   if (this.beanFactory == null) {
    this.beanFactory = new ClassPathXmlApplicationContext(SPRING_CFG);
   }
   return this.beanFactory;
}

/**
* 通过在Spring配置文件中定义的bean名称,从IOC容器中取得实例
*
* @param beanName
*            bean名称
* @return bean名称对应实例Object,使用时需要强制类型转换
*/
public Object getBean(String beanName) throws NullPointerException {
   if (beanName == null) {
    throw new java.lang.NullPointerException("beanName不能为空!");
   }
   return this.getBeanFactory().getBean(beanName);
}

public static void main(String[] args) {
   // TODO
   // 测试代码
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值