본문 바로가기
웹 프로그래밍/스프링

Spring JDBC 실습해보기

by Backchus 2019. 1. 21.

부스트코스의 웹 프로그래밍 과정을 복습하는 게시물입니다.

Spring JDBC

JDBC를 이용해 데이터를 이용하다보면 Connection객체를 생성하고 PrepareStatement, ResultSet객체 생성등 반복되는 개발 요소가 존재하기 때문에 간단한 쿼리문을 실행하려고해도 쓸데 없이 코드가 많아지게되고 매번 저런 작업을 하기엔 너무 귀찮다. 그래서 이런 작업들을 처리해 줄 수 있게 Spring JDBC를 이용하면  이런 귀찮은 일을 할 필요 업이 필요한 부분만 작업하면 된다.


스프링에서 지원해주는 일 vs 개발자가 해야 할 일

표를 보면 JDBC를 이용할때 직접 작성해야했던 연결과 연결을 해제하는 부분을 스프링 JDBC에서 알아서 처리해주고 트랜잭션작업까지 알아서 처리해주기 때문에 연결 파라미터값과 SQL문 작성등에 관해서만 신경쓰면 된다. 


Spring JDBC 패키지

Spring JDBC의 패키지를 살펴보면

org.springframework.jdbc.core

JdbcTemplate 및 관련 Helper객체를 제공한다.

org.springframework.jdbc.datasource

DataSource를 쉽게 접근하기 위한 유틸 클래스로 트랜젝션매니져 및 다양한 DataSource 구현을 제공한다.

org.springframework.jdbc.object

RDBMS 조회, 갱신, 저장등을 안전하고 재사용 가능한 객체를 제공한다.

org.springframework.jdbc.support

jdbc.core 및 jdbc.object를 사용하는 JDBC 프레임워크를 지원한다.


JDBC Template

org.springframework.jdbc.core에서 가장 중요한 클래스다.

리소스 생성, 해지를 처리해서 연결을 닫는 것을 잊어 발생하는 문제 등을 피할 수 있도록 한다.

Statement의 생성과 실행을 처리해준다.

SQL 조회, 업데이트, 저장 프로시저 호출, ResultSet 반복호출 등을 실행한다.

JDBC 예외가 발생할 경우 org.springframework.dao패키지에 정의되어 있는 일반적인 예외로 변환시킨다.