Spring@Autowired자동으로 Dao 주입, null로 꺼내기

4035 단어 Java 프레임워크
이런 원인을 초래한 상황
@Service
public class Test {
	@Autowired
	UserDao userDao;
	public int getCoins() {
		return userDao.getCoins(1);
	}
	public static void main(String[] args) throws SQLException {
		Test test=new Test();
		System.out.println(test.userDao);
		System.out.println(test.getCoins());
	}
}

이 경우 출력은 비어 있습니다. 왜냐하면 ioc 용기가 작동하지 않았기 때문에 Dao에 주입할 수 없습니다.위 코드의 경우 Test 클래스는 new 방식으로 실례를 가져올 수 없고 ioc로 가져와야 합니다.... 로 바꾸다
	ApplicationContext ioc=new ClassPathXmlApplicationContext("ApplicationContext.xml");
		Test bean = ioc.getBean(Test.class);
		System.out.println(bean.userDao);
		System.out.println(bean.getCoins());

좋은 웹페이지 즐겨찾기