我在写单测的时候(spring环境下的单元测试)想获得当前spring的ApplicationContext上下文。我是这样实现的:
import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; /** * <pre> * TestGetApplicationContext.java * @author kanpiaoxue<br> * @version 1.0 * Create Time 2014年12月11日 下午2:44:36<br> * Description : Spring JUnit 的单测中如何获取当前spring的ApplicationContext上下文 * </pre> */ @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = "classpath:spring-ctx-sf-application.xml") public class TestGetApplicationContext implements ApplicationContextAware { private ApplicationContext applicationContext; /* * (non-Javadoc) * @see * org.springframework.context.ApplicationContextAware#setApplicationContext * (org.springframework.context.ApplicationContext) */ @Override public void setApplicationContext(ApplicationContext arg0) throws BeansException { this.applicationContext = arg0; } @Test public void testGetApplicationContext() { System.out.println(applicationContext); Assert.assertNotNull(applicationContext); } }