JDBC(Java DataBase Connectivity)
: 자바에서 데이터베이스에 접근할 수 있게 해주는 Programming API
java랑 db를 연결시켜줄 드라이버가 필요함
오라클에서 제공하는 jar파일
이걸 lib 파일에 넣어줘야함
아님 properties로 등록
java Build Path -> Libraries -> Add External JARs...
JDBC 사용객체
DriverManager -> connection이라는 객체를 만드는 역할
: 데이터 원본에 JDBC드라이버를 통하여 커넥션을 만드는 역할
Class.forName() 메소드를 통해 생성되며 반드시 예외처리를 해야함
Conncection -> DB에 대한 연결정보가 담겨져있음
: 특정 데이터 원본과 연결된 커넥션을 나타내며 Statement객체를 생성할 때도 Connection객체를 사용하여 createStatement() 메소드를 호출하여 생성
SQL문장을 실행시키기 전에 우선 Conncection 객체가 있어야함
Statement -> SQL문을 DB에 실행 시키는 역할
: Conncetion객체에 의해 프로그램이 리턴되는 객체에 의해 구현되는 일종의 메소드 집합 정의
Conncection클래스의 createStatement() 메소드를 호출하여 얻어지며 생성된 Statement객체로 질의문장을 String객체에 담아
인자로 전달하여 executeQuery() 메소드를 호출하여 SQL 질의 수행
PreparedStatement (=Statement) -> SQL문을 실행하고 받아옴
: Conncection 객체의 preparedStatement() 메소드를 사용하여 객체 생성
SQL문장이 미리 컴파일 되고 실행 시간 동안 인수 값을 위한 공간을 확보한다는 점에서 Statement와 다름
각 인수에 대해 위치홀더(=statement)를 사용해 SQL문장을 정의할 수 있게 함
ex)
try{
String query = "INSERT INTO ____ VALUES(?,?,?,?)";
pstmt.conn.prepareStatement(query);
pstmt.setString(1,id);
pstmt.setString(2,passwird);
}cath(SQLException e){
e.printStackTrace();
}
ResultSet
:SELECT문을 사용한 질의 성공 시 ResultSet반환
SQL질의에 의해 생성된 테이블을 담고 있으며 커서로 특정 행에 대한 참조 조작
JDBC 절차
Driver 등록 -> DBMS연결 -> Statement 생성 -> SQL전송 -> 결과 받기 -> 닫기(객체 반환)
* 반드시 ClassNotFoundException 처리를 해야함
'Programming | Study > JDBC' 카테고리의 다른 글
JDBC 구조 (0) | 2021.10.11 |
---|---|
JDBC - oracle연동 (0) | 2021.08.29 |
댓글