장점
● 설정의 편리함
● JdbcTemplate은 spring-jdbc 라이브러리에 포함되어 있는데, 이 라이브러리는 스프링으로 JDBC를 사용할 때 기본으로 사용되는 라이브러리이다. 그리고 별도의 복잡한 설정 없이 바로 사용할 수 있다.
● 반복 문제 해결
● JdbcTemplate은 템플릿 콜백 패턴을 사용해서, JDBC를 직접 사용할 때 발생하는 대부분의 반복 작업을 대신 처리해준다.
● 개발자는 SQL을 작성하고, 전달할 파리미터를 정의하고, 응답 값을 매핑하기만 하면 된다.
● 우리가 생각할 수 있는 대부분의 반복 작업을 대신 처리해준다.
● 커넥션 획득
● statement 를 준비하고 실행
● 결과를 반복하도록 루프를 실행
● 커넥션 종료, statement , resultset 종료
● 트랜잭션 다루기 위한 커넥션 동기화
● 예외 발생시 스프링 예외 변환기 실행
단점
● 동적 SQL을 해결하기 어렵다.
JdbcTemplate 설정
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
implementation 'org.springframework.boot:spring-boot-starter-web'
//JdbcTemplate 추가
implementation 'org.springframework.boot:spring-boot-starter-jdbc'
//H2 데이터베이스 추가
runtimeOnly 'com.h2database:h2'
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
//테스트에서 lombok 사용
testCompileOnly 'org.projectlombok:lombok'
testAnnotationProcessor 'org.projectlombok:lombok'
}
● JdbcTemplate은 spring-jdbc 라이브러리만 추가하면 된다. 별도의 추가 설정 과정은 없다.
진행하기 전에 먼저 H2 데이터베이스에 item 테이블을 생성해야 한다.
drop table if exists item CASCADE;
create table item
(
id bigint generated by default as identity,
item_name varchar(10),
price integer,
quantity integer,
primary key (id)
);
출처 : 김영환 스프링 DB2 강의
'데이터 접근 기술 > JdbcTemplate' 카테고리의 다른 글
JdbcTemplate - 이름 지정 파라미터 2 (0) | 2022.08.12 |
---|---|
JdbcTemplate - 이름 지정 파라미터 1 (0) | 2022.08.12 |
JdbcTemplate 적용3 - 구성과 실행 (0) | 2022.08.12 |
JdbcTemplate 적용2 - 동적 쿼리 문제 (0) | 2022.08.12 |
JdbcTemplate 적용1 - 기본 (0) | 2022.08.12 |