개발하는 자몽

[Spring]JdbcTemplate 본문

Java/Spring

[Spring]JdbcTemplate

jaamong 2022. 9. 30. 08:03

JdbcTemplate을 아주 간단하게 소개하려고 한다. 이전 포스트에서 JDBC 사용으로 인하여 발생하는 코드 중복 문제가 남아있다고 했었다. JdbcTemplate을 사용하면 해당 문제가 해결된다.

 

JdbcTemplate (Spring Framework 5.3.23 API)

스프링에서 제공하는 JdbcTemplate은 JDBC 사용으로 생기는 중복을 없애주며 코드를 단순화한다.

해당 클래스는 SQL 쿼리나 업데이트를 실행하여 ResultSet 인스턴스에 대한 반복을 실행하고, JDBC의 예외를 잡아서 데이터 접근 계층(org.springframework.dao 패키지에 정의된 예외 계층) 예외로 변환시켜준다. 

 

Note JdbcTemplate 인스턴스는 한번 설정하면 Thread-Safe 하다.

//DataSource는 항상 스프링 컨테이너에서 빈으로 구성해야 한다.
public class MemberRepositoryImpl implements MemberRepository {

    private final JdbcTemplate template;

    public MemberRepositoryImpl(DataSource dataSource) {
        this.template = new JdbcTemplate(dataSource);
    }
    
    ...
}

 

 

 

 

 

출처

 

JdbcTemplate (Spring Framework 5.3.23 API)

Execute a query for a result object, given static SQL. Uses a JDBC Statement, not a PreparedStatement. If you want to execute a static query with a PreparedStatement, use the overloaded JdbcOperations.queryForObject(String, Class, Object...) method with nu

docs.spring.io

 

참고하면 좋은 블로그

 

[Spring] Spring JdbcTemplate 가이드 (공식문서, Baeldung)

Spring JdbcTemplate에 대한 공식문서 가이드 (K가 알려주셨다🙇‍♀️ 감사합니다!) 3.1 Choosing an Approach for JDBC Database Access에서 간단한 설명을 읽고 3.3.1. UsingJdbcTemplate 부분부터 보면 될 듯!..

bibi6666667.tistory.com

'Java > Spring' 카테고리의 다른 글

[JPA] Entity - 매핑 관계  (0) 2022.12.22
[JPA] Hibernate의 데이터베이스 초기화 전략  (0) 2022.12.21
스프링 예외 추상화  (1) 2022.09.29
@SpringBootTest, @TestConfiguration  (0) 2022.09.24
[트랜잭션] @Transactional AOP  (0) 2022.09.23
Comments