- JDBC(Java Database Connectivity)는 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API이다.
- JDBC는 데이터베이스에서 자료를 쿼리하거나 업데이트하는 방법을 제공한다.
- JDBC 드라이버를 로드
- 데이터베이스 연결
- SQL 명령어(Statement 또는 PreparedStatement)를 사용하여 질의 수행.
- 질의 결과를 ResultSet 객체를 생성하여 결과 리턴
- JDBC 연결 과정에서 필요했던 객체들을 close
https://downloads.mysql.com/archives/c-j/
Class.forName("com.mysql.cj.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/employees?serverTimezone=UTC"; //DB연결 (로컬호스트 뒤에 연결 할 DB명)
String user = "아이디"; //mysql 워크벤치 아이디
String pass = "비밀번호"; //mysql 워크벤치 비밀번호
Connection con = DriverManager.getConnection(url, user, pass);
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class DBDB {
public static void main(String[] args) {
System.out.println("MySQL연동");
// 8.x 버전
try {
Class.forName("com.mysql.cj.jdbc.Driver"); // Class.forName() 메서드를 이용해서 JDBC 드라이버를 로딩
String url = "jdbc:mysql://localhost:3306/employees?serverTimezone=UTC"; //DB연결 (로컬호스트 뒤에 DB명)
String user = "아이디"; //mysql 워크벤치 아이디
String pass = "비밀번호"; //mysql 워크벤치 비밀번호
// 데이터베이스 실제 연결을 도와주는 클래스
// Connection con = DriverManager.getConnection(url, user, pass);
try {
Connection con = DriverManager.getConnection(url, user, pass);
if(con != null) {
System.out.println("DB연결 성공!");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("연결 에러");
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("드라이버 로딩 에러");
e.printStackTrace();
}
}
// 데이터베이스 작업에 사용한 객체를 닫는 메서드
public static void close(Connection conn) {
if(conn != null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void close(Statement conn) {
if(conn != null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void close(PreparedStatement conn) {
if(conn != null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void close(ResultSet rs) {
if (rs != null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } }
}
}
MySQL의 employees 데이터베이스와 연결 성공