제 3회 스프링 세미나 토비님 발표 예제 따라하기
소스 코드
cn323.zip먼저 클래스들은 다음과 같은 구조로 되어 있습니다.
Controller는 Service에 Service는 Dao에 종속성을 가지고 있습니다. 예전 같으면 XML의 설정 파일을 사용하여 다음과 같이 종속성 주입을 했을 것 입니다.
<bean id="controller" class="s21.Controller">
<property name="service" ref="service" />
</bean>
또는 2.0의 p 스키마를 이용하여
<bean id="controller" class="s21.Controller" p:service-ref="service" />
또는 autowiring을 사용해서
<bean id="controller" class="s21.Controller" autowire="byType" />
이 밖에도 여러가지 종속성을 설정할 수 있는 방법이 있지만 지금 보신 세가지 방법 중에서도 맨 마지막 방법을 Spring 2.1부터 @Autowired 애노테이션으로 대체 할 수 있습니다.
현재는 M2 에서 required 속성 하나가 추가가 됐고 타입으로만 종속성을 주입하지만 정식 버전이 나올 때는 더 많은 속성을 지원 해 주지 않을까 예상해 봅니다.
적어도 기존의 XML 설정에서 할 수 있었던 저 정도의 설정들은 모두 가능하게 해줘야 하지 않을까 생각합니다.
Anyway, 토비님 예제 코드를 보고 기억나는 부분을 더듬어서(패키지 이름까지..ㅋ) 만들어 보았습니다. 세미나에 불참하셨거나, 참석하신 분들 중에서 소스 코드를 보고 싶으신 분들은 다운로드 하여 이것 저것 변경해보시면 되겠습니다.