본문 바로가기

Java

JDBC란?

JAVA DATA BASE CONNECTIVITY

= 자바와 DB(오라클, MYSQL,....) 연동 기술

어떤 환경에서든(WEB /  비 WEB) 에서도 사용가능

드라이버(driver) => 각 벤더에서 제공한 jar 파일 => 이클립스에서 사용할 수 있도록 연동

 

드라이버 연동방법( 이클립스 기준 )

 

프로젝트 폴더 선택 ->  build path -> configure build path -> libraries -> add extenal JARs 에서 원하는 jar 선택

 ==> 오라클은 서버 -> jdbc에 있음. 용량이 클수록 기능이 좋은 클래스 파일.

 

JDBC 작업순서

1. DB연동하기 위한 4가지

 1) Stirng driver = "oracle.jdbc.driver.OracleDriver";

 2) String url = "jdbc:oracle:thin:@localhost:1521:xe

                                              ==> @아이피:번호:서비스id (외부 pc 접근시 방화벽 해제 필수)

 3) Stirng id = "SCOTT"; 

 4) Stirng pw = "TIGER";

 

2. 드라이버 로딩(  문자열로 제공된 클래스 파일을 객체 생성하는 방법)

class.forName(driver); =>  예외처리 필수. 예외처리 안하면 컴파일 에러 발생!

 

SQL문 전송

1.DML (insert, delete, update, merge)

String sql = "insert into~~~~~~.,.....";

preparedStatement pstmt = con.preareStatement(sql);

int n  = pstmt.executeUpdate();

==> DML의 실행결과 갯수 반환이므로 정수형이다.

2. query(select)

String sql  = "Sql 문~~~~~";

preparedStatement pstmt = con.preareStatement(sql);

ResultSet rs = pstmt.executeQuery();

 

**DB 연동시 사용되는 2가지 패턴 및 구조

클래스(메인) <ㅡ> 서비스 클래스 <ㅡ> DAO 클래스 <ㅡ> 오라클(DB)

                               => *트랜잭션 처리*(서비스 클래스)

DAO(Data Access Object)

=> DB를 접근할 떄 사용되는 전담 클래스.

 

DTO (Data Transfer Object) => Data를 전달용 클래스