공부한것들을 정리하는 블로그 입니다.
5-1. DAO클래스 구현 : JdbcDaoSupprot 클래스를 상속하는 방법, JdbcTemplate 클래스를 <bean> 등록하고, 의존성 주입으로 처리하는 방법 본문
5-1. DAO클래스 구현 : JdbcDaoSupprot 클래스를 상속하는 방법, JdbcTemplate 클래스를 <bean> 등록하고, 의존성 주입으로 처리하는 방법
호 두 2019. 6. 19. 10:40
스프링 JDBC를 이용하기 위한 모든 설정이 마무리됐으면, 이제 JdbcTemplate 객체를 이용하여 DAO 클래스만 구현하면 됩니다. 그런데 DAO 클래스에서 JdbcTemplate 객체를 얻는 방법은 두가지 입니다.
1번째 방법. JdbcDaoSupprot 클래스를 상속하는 방법
2번째 방법. JdbcTemplate 클래스를 <bean> 등록하고, 의존성 주입으로 처리
1번째 방법. JdbcDaoSupprot 클래스를 상속하는 방법
참고로 @Autowired 어노테이션은 주로 변수 위에 선언하는데 메소드 위에 선언해도 동작합니다. 메소드 위에 @Autowired를 붙이면 해당 메소드를 스프링 컨테이너가 자동으로 호출해주며, 이때 메소드 매개변수 타입을 확인하고 해당 타입의 객체가 메모리에 존재하면 그 객체를 인자로 넘겨줍니다.
2번째 방법. JdbcTemplate 클래스를 <bean> 등록하고, 의존성 주입으로 처리
일반적으로 사용하는 방법은 이 2번 방법입니다.
먼저 스프링 설정파일에 JdbcTemplate 클래스를 <bean> 등록합니다.
이때 반드시 JdbcTemplate 객체에 DataSource 객체를 의존성 주입해야 합니다. 그러고 나서 DAO 클래스에서는 @Autowired 어노테이션을 이용하여 JdbcTemplate 타입의 객체를 의존성 주입 처리하면 됩니다.
JdbcDaoSupprot 클래스를 상속하는 1번째 방법보다는, 의존성을 주입하는 2번째 방법이 조금 더 깔끔하고 일반적으로 더 자주 쓰입니다.
DAO를 수정 후 BoardServiceClient 프로그램을 구동시켜보면 정상 동작하는 것을 확인 가능하다
'(2019) 사이드 프로젝트 > BoardWeb(게시판-MVC1,MVC2,스프링MVC)' 카테고리의 다른 글
7-2. 글 목록 조회, 글 검색 기능 : getBoardList.jsp, BoardDAO.java (0) | 2019.06.24 |
---|---|
7-1. 로그인, 로그아웃, 로그인 검증 및 실패 후처리 : login.jsp, login_proc.jsp, logout_proc.jsp (3) | 2019.06.24 |
7. MVC Model1 아키텍처로 게시판 개발 : web.xml, representation-layer.xml, index.jsp (0) | 2019.06.20 |
6. 트랜잭션 처리 : 스프링 AOP Advisor 사용 (0) | 2019.06.19 |
5. 스프링 JDBC : JDBCUtil을 스프링JDBC로 교체, RowMapper 추가 (0) | 2019.06.19 |
4-4. 별첨) 프로젝트 첨부 (0) | 2019.06.19 |
4-3. 시스템로그를 로그파일(.log)로 자동저장하기: log4j (0) | 2019.06.18 |
4-2. 관심분리(횡단관심) : LogAdvice를 Log4Advice로 교체, pointcut엘리먼트 사용, XML설정을 Annotation설정으로 교체 (0) | 2019.06.17 |