容器添加bean
<bean id="spring" class="com.ceopen.eoss.spring.SpringUtil" />
SpringUtil
package com.ceopen.eoss.spring;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
/**
* 通过名称获取对应的bean 。。如果是注解方式,,默认是小写
* @author dwz
* @version 创建时间:2016年12月14日 下午1:56:27
*/
public class SpringUtil implements ApplicationContextAware {
private static ApplicationContext applicationContext;
@Override
public void setApplicationContext(ApplicationContext context)
throws BeansException {
SpringUtil.applicationContext = context;
}
/**
* 通过名称获取对应的bean 。。如果是注解方式,,默认是小写
* -------------获取接口的时候name是实现的bean的名称。
* @param name
* @return
*/
public static Object getBean(String name){
return applicationContext.getBean(name);
}
}
测试类
package com.dwz.test;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.ceopen.eoss.spring.SpringUtil;
import com.sofmit.domain.Text;
import com.sofmit.service.ITextService;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class UserTest {
//这里支持注解,下面的测试方法是测试getBean方法。
// @Autowired
// private UserMapper userMapper;
// @Autowired
// private ITextService textService;
@Test
public void get() throws Exception {
ITextService textService=(ITextService) SpringUtil.getBean("textServiceImpl");
Text text = textService.getOne(35L);
System.out.println(text);
}
}