JDBC란?
JDBC(Java Database Connectivity)는 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API다.
JDBC는 데이터베이스에서 자료를 쿼리하거나 업데이트하는 방법을 제공한다.
대표적으로 다음 3가지 기능을 표준 인터페이스로 정의해서 제공한다.
- java.sql.Connection : 연결
- java.sql.Statement : SQL을 담은 내용
- java.sql.ResultSet : SQL 요청 응답
JDBC는 표준 인터페이스이기 떄문에 구현하여 사용하여야한다.
여러 회사들이 자신의 DB에 맞도록 구현해서 라이브러리로 제공하는데, 이것을 JDBC 드라이버라 한다.
MySQL DB에 접근할 수 있는 것은 MySQL JDBC 드라이버라 하고, Oracle DB에 접근할 수 있는 것은 Oracle JDBC 드라이버라 한다.
JDBC 사용 방법
DriverManager를 통해 라이브러리에 있는 DB 드라이버를 찾아서 해당 드라이버가 제공하는 커넥션을 반환한다.
Connection connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);
Connection을 통해 Statement를 얻어 데이터베이스에 전달할 SQL과 파라미터로 전달할 데이터들을 준비한다.
String sql = "select * from member where member_id = ?";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setString(1, memberId);
Statement에 저장된 SQL을 실행하여 ResultSet을 얻는다.
rs = pstmt.executeQuery();
if (rs.next()) {
Member member = new Member();
member.setMemberId(rs.getString("member_id"));
member.setMoney(rs.getInt("money"));
return member;
} else {
throw new NoSuchElementException("member not found memberId=" + memberId);
}
모든 과정이 끝나면 열려있는 객체를 모두 닫아야한다. 닫는 순서는 역순으로 진행한다.
rs.close();
stmt.close();
con.close();
출처 : https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-db-1/dashboard
'DB' 카테고리의 다른 글
[DB] 트랜잭션(Transaction) (0) | 2023.01.28 |
---|---|
[DB] 커넥션 풀(Connection Pool)과 데이터소스(DataSource) (0) | 2023.01.27 |