728x90
데이터베이스 연결
ConnectionConst
public abstract class ConnectionConst {
public static final String URL = "jdbc:h2:tcp://localhost/~/test";
public static final String USERNAME = "sa";
public static final String PASSWORD = "";
}
데이터베이스에 접속하는데 필요한 기본 정보를 작성하는 추상 클래스.
데이터베이스 URL, 데이터베이스 USERNAME, 데이터베이스 PASSWORD를 작성하여 저장하였다.
변경되는 값이 아니므로 상수로 선언.
DBConnectionUtil
import lombok.extern.slf4j.Slf4j;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import static hello.jdbc.connection.ConnectionConst.*;
public class DBConnectionUtil {
public static Connection getConnection(){
try {
Connection connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);
return connection;
} catch (SQLException e) {
throw new IllegalStateException(e);
}
}
}
데이터베이스에 연결하기 위해 JDBC가 제공하는 DriverManager.getConnextion(..) 사용.
라이브러리에 있는 데이터베이스 드라이버를 찾아, 해당 드라이버가 제공하는 커넥션을 반환.
현재 H2 데이터베이스를 사용하고 있으므로, H2데이터베이스 드라이버가 작동하여 실제 데이터베이스와 커넥션을 맺고 결과를 반환한다.
JDBC 커넥션 인터페이스와 구현
- JDBC는 java.sql.Connection 표준 커넥션 인터페이스를 정의.
- H2 데이터베이스 드라이버는 JDBC Connection 인터페이스를 구현한 org.h2.jdbc.JdbcConnection 구현체를 제공
참조
스프링 DB 1편 - 데이터 접근 핵심원리 (김영한)
반응형
'Server > Java' 카테고리의 다른 글
[Java] Builder 패턴이란? @Builder (0) | 2023.05.03 |
---|---|
[Spring] Lombok @AllArgsConstructor, @NoArgsConstructor, @RequiredArgsConstructor (0) | 2023.04.26 |
[JDBC] JDBC와 최신 데이터 접근 기술 (0) | 2022.11.02 |
[JDBC] JDBC의 이해 (0) | 2022.11.02 |
[Jdbc] queryForObject와 Update의 차이점, queryForObject 변경사항 (0) | 2022.11.02 |