[JDBC] Java Spring과 Database(MySQL) 연결하기
JDBC (Java Database Connectivity)
Java 프로그래밍 언어에서 데이터베이스에 연결하고 쿼리를 실행하기 위한 API
JDBC의 주요 구성 요소와 개념
- DriverManager - 설정:
- JDBC 드라이버를 관리하고 데이터베이스 연결을 설정하는 데 사용됩니다.
DriverManager.getConnection()
메서드를 통해 데이터베이스 연결을 얻습니다.
- Connection - 연결:
- 데이터베이스와의 연결을 나타내는 객체입니다.
- 이 객체를 통해 데이터베이스에 SQL 명령을 실행할 수 있습니다.
Connection
객체는DriverManager
를 통해 얻습니다.
- Statement - SQL을 담은 내용:
- SQL 쿼리를 실행하는 데 사용됩니다.
Statement
객체를 통해 SQL 쿼리를 데이터베이스에 전송하고 결과를 받을 수 있습니다.- 세 가지 종류의
Statement
가 있습니다:Statement
,PreparedStatement
,CallableStatement
.
- ResultSet - SQL 요청 응답:
SELECT
쿼리의 결과를 나타내는 객체입니다.ResultSet
객체를 통해 쿼리 결과를 순차적으로 읽을 수 있습니다.
- SQLException - 예외 처리:
- JDBC 작업 중 발생하는 예외를 처리하기 위한 클래스입니다.
- 데이터베이스와의 통신에서 발생할 수 있는 모든 문제를 처리합니다.
JDBC API 사용 흐름
- JDBC 드라이버 로딩
Class.forName("com.mysql.cj.jdbc.Driver");
MySQL JDBC 드라이버를 로드
- Connection 객체 생성
this.connection = DriverManager.getConnection(url, username, password);`
데이터베이스에 연결
- Statement 객체 생성
PreparedStatement statement = connection1.prepareStatement("SELECT * FROM singleton")
실행시킬 SQL 쿼리를 담은
PreparedStatement
객체 생성 - Query 실행
ResultSet resultSet = statement.executeQuery()
executeQuery
메서드를 사용하여 쿼리 실행 - ResultSet 객체로부터 데이터 조회
while (resultSet.next()) { System.out.println("Data: " + resultSet.getString("column1")); }
참고: https://ittrue.tistory.com/250
코드
GitHub - KimGyeongLock/connection_pool_singleton_pattern: 싱글톤 패턴으로 데이터베이스 연결 관리하기