오늘의 키워드
- JDBC(Java Database Connectivity)
- JDBC Driver Manager
- Spring Boot의 JDBC 라이브러리
- PreparedStatement
오늘의 내용
1. JDBC(Java Database Connectivity)
- JDBC 드라이버란?
- 자바 애플리케이션에서 데이터베이스에 접근할 수 있도록 하는 API.
- 자바 애플리케이션과 특정 데이터베이스 간의 연결을 가능하게 하는 역할.
- JDBC 드라이버 타입
- 4가지 유형이 있으며, 일반적으로 Type 4(순수 자바 드라이버)가 사용됨.
- JDBC의 주요 기능
- Java와 데이터베이스를 연결.
- JPA도 이 기술을 사용하여 구현됨.
- 다양한 유형의 데이터베이스와 연결 가능.
- JDBC Driver Manager
- Connection을 생성하여 쿼리를 요청할 수 있는 상태로 만듦.
- Statement를 생성하여 쿼리를 요청.
- ResultSet을 생성해 쿼리 결과를 받아옴.
2. Spring Boot의 JDBC 라이브러리
- Spring Boot의 지원
- 다양한 JDBC 드라이버를 지원하여 개발자가 복잡한 설정 없이 데이터베이스와의 연결을 쉽게 구성 가능.
- spring-boot-starter-jdbc
- 데이터베이스 작업을 수행하는 데 필요한 주요 의존성과 자동 구성 기능을 제공.
- 주요 기능
- JDBC API 지원: SQL 데이터베이스에 접근하고 작업을 수행할 수 있음.
- DataSource 구성: 데이터 소스 연결을 자동으로 구성.
- JdbcTemplate: SQL 쿼리 실행, 결과 세트 처리, 예외 처리 등을 단순화.
- 자동 구성: 대부분의 의존성을 자동으로 처리.
- 효율적인 예외 처리: Spring의 DataAccessException을 통해 JDBC에서 발생하는 예외를 일관된 예외 체계로 변환.
3. PreparedStatement(준비된 상태)
- Statement를 상속하는 Interface
- 구문 분석 결과를 캐싱하여 성능을 향상.
- Statement와의 차이점
- Statement는 SQL문을 실행할 때마다 구문 분석을 수행하여 비효율적.
- PreparedStatement는 구문 분석 결과를 캐싱하여 효율적.
오늘의 회고
어제오늘 병원 진료로 시간을 날려서 얼른 프로젝트 진행을 해야 되는데 이번 프로젝트에서 적용해야 되는 QueryDSL, 테스트코드 부분이 아직 이해가 잘 되지 않아 걱정이 많다 Docker강의도 들어야 하고 갈수록 할게 산더미처럼 불어나는 기분이다 그럼에도 불구하고 해야지
'TIL' 카테고리의 다른 글
TIL내일배움캠프 12주차 JPA심화 JPA Repository (0) | 2024.07.05 |
---|---|
TIL내일배움캠프 12주차 JPA심화 MyBatis (0) | 2024.07.05 |
TIL내일배움캠프 12주차 JPA심화 DB Driver (0) | 2024.07.01 |
TIL내일배움캠프 11주차 JPA심화 트랜잭션 (0) | 2024.06.28 |
TIL내일배움캠프 11주차 JPA심화 H2 데이터베이스 사용 방식 및 SQL 종류 (0) | 2024.06.27 |