package IOCReview;
import static org.junit.Assert.*;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
/**
* @ClassName: IOC入门Test
* @Description: TODO(这里用一句话描述这个类的作用)
* @author Administrator
* @date 2019年5月15日
*
*/
@RunWith(SpringJUnit4ClassRunner.class) // SpringJUnit支持,由此引入Spring-Test框架支持!
@ContextConfiguration({"classpath:applicationContext.xml"}) //用于加载bean
public class IOCTest {
@Autowired
public Car car;
@Test
public void testName() throws Exception {
ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
UserDao dao=(UserDao) context.getBean("UserDao");
dao.save();
}
@Test
public void testCar() throws Exception {
System.out.println(car.getName()+" "+car.getPrice());
}
}
以上是我通过ClassPathXmlApplicationContext 以及 @Autowired 测试IOC的例子
后面测试@Autowired 遇到困难,无法自动注入Bean
经过检查,发现首先要映入spring-test的框架,其次要加载bean文件,这是我在网上查到的
不过我测试的时候还是不行,后面检查发现是spring-test的版本太高了,最后引入4.1.3才OK
@RunWith(SpringJUnit4ClassRunner.class) // SpringJUnit支持,由此引入Spring-Test框架支持!
@ContextConfiguration({"classpath:applicationContext.xml"}) //用于加载bean