어노테이션을 이용할 때의 장점과 @Autowired를 이용한 DI 해보기
설정 파일을 지정하는 방법
-
외부에 xml 파일 두기
-
내부 코드에 Annotation(설정 정보)으로 심기 -> 자바 강의 듣기
DI하는 부분을 Annotation으로 바꿔볼 예정
스프링 관련 어노테이션들
설정 파일을 수정하는 것도 귀찮아짐
Annotation을 사용했을 때 객체를 바꿔버리면 코드도, 설정도 바뀌게 함
객체 생성은 다음 시간에 배울 것
객체에 객체를 DI하는 것을 일단 어노테이션으로 해볼 것(@Autowired)
xml 파일쪽 주석 처리
java 파일쪽 주석 처리
이대로 실행 시 NullPointerException 발생
실제로 DI가 안된 것을 확인한 것임
setter쪽에 Annotation을 추가함, 하지만 그래도 NullPointerException이 발생
굳이 Class 안에 Autowired Annotation을 찾으려 하지 않기 때문임
지시서에 그걸 찾아달라는 것을 추가해야 함
Namespaces에서 context 체크
xml 파일에 다음과 같은 처리기 추가됨
태그 추가
객체들이 Annotation을 갖고 있다는 뜻
정상 실행됨
xml 설정 파일에서 ref 속성을 통해 exam을 참고했던 것과 다르게 Annotation은 뭐를 근거로 바인딩을 한 것일까? -> 다음 시간