템플릿 콜백 패턴
-
3장) 3.6 스프링의 JdbcTemplate~ 3.7 정리Java & Spring/토비의 스프링 3.1 2021. 6. 17. 17:10
3장 템플릿 3.6 스프링의 JdbcTemplate 스프링 제공 템플릿/콜백 JdbcContext를 JdbcTemplate로 수정 update() 메소드 createPreapredStatement() 메소드와 대응되는 메소드로, SQL 문장만 파라메터 전달함으로써 사용 add 메소드와 대응되는 콜백으로 사용하는 경우, 바인딩할 파라미터를 순서대로 전달 queryForInt() 메소드 ResultSetExtractor는 PreparedStatement 쿼리를 실행해서 얻은 ResultSet을 전달받는 콜백 콜백을 만들고 익명 내부 클래스를 복잡하게 설정 JdbcTemplate에서 제공하는 queryForInt 메소드를 사용 스프링에서 제공하는 클래스지만 DI 컨테이너를 필요로 하지 않음 queryForOb..
-
3장) 3.4 컨텍스트와 DI ~ 3.5 템플릿과 콜백Java & Spring/토비의 스프링 3.1 2021. 6. 11. 16:44
3장 템플릿 3.4 컨텍스트와 DI JdbcContext의 분리 전략 패턴 구조 UserDao의 메소드가 클라이언트 익명 내부 클래스로 만들어진 것이 개별적인 전략 jdbcContextWithStatementStrategy 메소드가 Context JDBC의 일반적인 작업 흐름을 가지고 있는 컨텍스는 다른 DAO에서도 사용 가능 ~> 분리 시켜보자 클래스 분리 JdbcContext가 DataSource에 의존 ~> DataSource 타입 빈을 DI 받게 변경 생성자를 통해 DataSource 주입 빈 의존관계 변경 클래스 분리로 인해 UserDao는 JdbcContext에 의존하고 있지만, JdbcContext는 구체 클래스 스프링 DI는 인터페이스를 사이에 두고 의존 클래스를 바꿔 사용하는게 목적 하지..