java DataBase Connectivity
자바 언어로 다양한 종류의 관계형 데이터베이스에 접속하고 SQL문을 수행하여 처리하고자 할 때 사용되는 표준 SQL 인터페이스 API (자바에서 DB 프로그래밍을 하기 위해 사용되는 API)
⇒ 즉, 자바에서 데이터베이스를 사용하기 위한 절차에 대한 규약이다.
⇒ 데이터베이스 종류에 상관 없다.
DBMS에 따라 DB를 다루는 방식이 다르다면, 사용자는 각 DBMS의 방식을 모두 알아야하기 때문에 지식이 너무 많이 필요하게 된다. 그래서 JDBC를 통해 추상화된 인터페이스를 제공하기만 하고, 데이터베이스의 종류에 상관없이 각 JDBC Driver를 통해 특정 DBMS를 사용할 수 있다.
DB에 접근하기 위한 인터페이스는 JDBC의 API를 사용하면 된다.
실제 DB 관련 기능이 동작하려면 JDBC가 제공하는 인터페이스만으로는 작업할 수 없다.
그렇기 때문에 java.sql의 인터페이스들을 상속하여 메소드의 몸체를 구현한 클래스파일들이 필요하다.
이 파일들을 JDBC 드라이버라고 한다.
JDBC 프로그램을 위해서는 우선 JDBC 드라이버를 준비해야한다. JDBC 드라이버는 DB가 설치된 폴더 또는 사용하는 DB를 제공하는 벤더사의 홈페이지에서 다운받을 수 있다.
Class.forName("JDBC드라이버 이름");
com.mysql.jdbc.Driver
oracle.jdb.driver.OracleDriver
com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbc:[DBMS]:[데이터베이스식별자]
jdbc:mysql://HOST[:PORT]/DNAME[?param=value¶m1=value2&..]
jdbc:oracle:thin:@HOST:PORT:SID
jdbc:sqlserver://HOST[:PORT];databaseName=DB
try (Connection con = DriverManager.getConnection(
"jdbc:mariadb://localhost:3306/studydb?user=study&password=1111");
PreparedStatement stmt = con.prepareStatement(
"delete from x_board where board_id=?")) {
stmt.setString(1, no);
int count = stmt.executeUpdate();
if (count == 0) {
System.out.println("해당 번호의 게시물이 존재하지 않습니다.");
} else {
System.out.println("삭제하였습니다.");
}
}
DriverManager.getConnection(String jdbcURL, Strgin user, String password)
next()
메서드로 데이터 조회 여부 확인
getString()
getInt()
, getLong()
, getFloat()
, getDouble()
getTimestamp()
, getData()
, getTime()
https://dyjung.tistory.com/50
https://codingwell.tistory.com/23