JDBC 비교

Let's Just Go·2022년 7월 6일
0

Spring

목록 보기
6/26

Spring

JDBC

Spring JDBC와 전통 JDBC 비교

  • 전통적인 JDBC 절차

    • 드라이버 로딩 → 연결 → SQL 작성 및 전송 → 자원 해제

    • Connection 객체 생성 → PrepareStatement 객체 생성 → SQL 문 실행 → ResultSet 객체 생성 결과 처리

    • 반복되는 작업이 너무 많은 단점이 존재


  • Spring JDBC (JdbcTemplate)

    • JDBC의 장점을 유지하면서 반복되는 단점을 극복하여 간결한 형태의 API 사용법을 제공하며 기존 방식에서 지원하지 않는 편리한 기능 제공

    • 반복 작업 대신 진행(Connection, PrepareStatement, ResultSet, Exception처리 등)

    • Spring JDBC는 SQL에 넣어줄 값을 지정해주면 됨

    • Spring JDBC 사용 전 DB커넥션을 가져오는 DataSource가 강제화
      즉, Spring은 Connection Pool을 무조건 사용해야 한다는 뜻인가?


  • Connection Pool

    • 여러 명의 사용자를 동시에 처리하는 Web Application

    • Connection Pooling은 미리 정해진 개수만큼 DB Connection을 Pool에 준비해두고 Application이 요청할 때 마다 Pool에서 꺼내서 할당하며 다시 돌려받아서 Pool에 넣는 기법




  • DataSource

    • DB에 이용되는 URL, id, pw, DriverClass를 미리 정의해 놓고 사용하는 객체

    • Spring Jdbc에서 기본으로 제공
profile
안녕하세요! 공부한 내용을 기록하는 공간입니다.

0개의 댓글