Download presentation
Presentation is loading. Please wait.
1
JDBC 소개 및 설치 슬라이드 노트에 모든 설명을 작성 Database Laboratory
2
JDBC What is the JDBC? JAVA Database Connectivity의 약어
자바와 데이터베이스 사이를 연결 연결된 데이터베이스의 종류와 상관없이 동일한 방법으로 자바가 데이터베이스 내에서 발생하는 트랜잭션을 제어할 수 있도록 하는 환경을 제공 JDBC란 Java Database Connectivity 의 약어로 High level language인 자바와 데이터베이스 사이에서 둘 사이를 연결하고 데이터베이스의 종류와 상관없이 동일한 방법으로 자바가 데이터베이스 내에서 발생하는 트랜젝션을 제어할 수 있도록 하는 환경을 제공 하는 역할을 합니다. Database Laboratory
3
JDBC Driver Manager 자바는 JDBC Driver Manager를 통하여 데이터베이 스에 접근 가능
드라이버 매니저는 애플리케이션과 데이터베이스 드 라이버 사이에서 프로그래머로 하여금 드라이버를 손쉽게 제어할 수 있게 함 다양한 범주의 드라이버를 단일한 드라이버 인터페 이스를 통해 제어하여 프로그램 이식성 제공 자바에서는 JDBC Driver Manager를 통하여 데이터베이스에 접근할 수 있게 되는데 드라이버 매니저는 애플리케이션과 데이터베이스 드라이버 사이에서 프로그래머로 하여금 드라이버를 손쉽게 제어할 수 있게 하며. 다양한 범주의 드라이버를 단일한 드라이버 인터페이스를 통해 제어함으로써 프로그램 이식성을 지원합니다 Database Laboratory
4
JDBC Driver 종류 드라이버 매니저에 의해 제공되는 드라이버는 다음 의 네 가지 타입으로 분류
JDBC-ODBC bridge driver Native-AIP partly-JAVA driver JDBC-NET pure JAVA driver Native-protocol pure JAVA driver 상위 type JDBC 드라이버의 종류는 Driver Manager에 의해 제공되는 드라이버는 다음의 네가지로 분류됩니다 하위 type Database Laboratory
5
JDBC Driver 종류 각각의 타입에 따라서 JDBC 드라이버의 구현 방법 이 다르며, System independency와 performance 등에 기본적인 차이를 보임 일반적으로 상위 타입으로 갈수록 performance와 independency가 증가 앞서 열거한 각각의 타입에 따라서 JDBC드라이버의 구현방법이 다르며, System independency와 performance 등에 기본적으로 차이가 있습니다. 일반적으로 상위 타입으로 갈수록 performance와 independency가 증가하기 때문에 프로그래머에게 보다 강력한 성능과 독립성을 제공하여 프로그래밍의 편의를 돕습니다. 하지만 보다 복잡한 작업을 수행하기 위해서는 하위 타입의 기능이 필요한 경우도 있습니다. Database Laboratory
6
JDBC Driver Download JDBC 드라이버 검색 Microsoft Download MSDN
kr/download/details.aspx?id=21599 MSDN 마이크로소프트에서 JDBC드라이버를 받으려면 마이크로소프트 다운로드 사이트나 MSDN을 이용하면 됩니다. Database Laboratory
7
Microsoft SQL Server JDBC 드라이버 3.0 다운로드
Database Laboratory
8
JDBC Driver Download JDBC 드라이버 설치
Slef-extarct 형태의 압축 파일이 다운로드 되며, 이를 실 행하여 압축을 해제 다운로드 받은 드라이버는 각자 본인이 드라이버를 설치할 경로를 설정하여 압축을 풀어줍니다. 본 강좌에서는 “C:\JDBC\Microsoft SQL Server JDBC Driver 3.0”의 경로에 설치하였습니다. Database Laboratory
9
JDBC Driver 설정 JDBC 드라이버 설치 압축을 해제하고 경로를 확인한다. Database Laboratory
드라이버가 설치된 폴더에 다음의 파일들이 존재하면 필요한 드라이버가 준비된 것입니다. Database Laboratory
10
JDBC Driver 설정 Classpath 설정 [제어판]에서 [시스템]을 통해 [고급 시스템 설정]을 선 택한다.
[시스템 속성]창에서 [고급]탭을 선택하고 [환경변수]를 선택한다. 설치된 드라이버를 java와 연동하기 위해서는 classpath 설정이 필요합니다. 우선 제어판에서 시스템 항목을 실행 후 [고급 시스템 설정]을 선택합니다. [시스템 속성]창에서 [고급]탭을 선택하면 classpath를 등록할 수 있는 [환경변수]가 있습니다. Database Laboratory
11
JDBC Driver 설정 Classpath 설정 시스템 변수에 새로 만들 기를 클릭하여 MSJDBC 라는 변수를 생성한다.
변수 값은 본인이 설치한 JDBC드라이버 위치에 존 재하는 sqljdbc.jar파일을 써주면 된다. 만일 본인이 jdk 1.6이상 의 버전을 사용한다면 sqljdbc4.jar로 설정한다. classpath에 직접 등록하여도 되지만 긴 경로가 많고 관리를 위해 MSJDBC라는 환경변수를 추가해줍니다. 변수 값은 본인이 설치한 JDBC드라이버 폴더의 sqljdbc4.jar 파일을 지정하면 됩니다. 본 강좌 내용과 동일한 경로에 설치하였다면 “C:\JDBC\Microsoft SQL Server JDBC Driver 3.0\sqljdbc_3.0\kor\sqljdbc4.jar”로 입력하면 됩니다. Database Laboratory
12
JDBC Driver 설정 Classpath 설정
Classpath 변수를 편집하 여 MSJDBC변수를 classpath 변수에 등록 MSJDBC 환경 변수를 등록하였다면 이 환경 변수를 classpath에 추가해줍니다. Database Laboratory
13
JDBC Driver Download (2)
i-net software사의 MS-SQL용 JDBC 드라이버 MERLIA : JDBC 3.0 및 4.0지원 OPTA : JDBC 2.0 과 추가 기능 지원 SPRINTA : JDBC 2.0지원 UNA : JDBC 1.22지원 다음으로 i-net software사의 JDBC드라이버를 설치해보도록 하겠습니다. i-net software에서 제공하는 JDBC드라이버는 상용으로 별도로 구입해서 사용할 수 있습니다. 하지만 기간제한형의 무료버전을 제공하고 있습니다. 제공하는 드라이버는 모두 4가지 이며, 지원하는 JDBC 버전에 따라 MERLIA, OPTA, SPRINTA, UNA라는 이름을 사용합니다. 드라이버는 i-net software 홈페이지를 통해 다운로드 받을 수 있습니다. Database Laboratory
14
JDBC Driver Download (2)
i-net software사의 MS-SQL용 JDBC 드라이버 i-net 홈페이지에서 다운로드 항목을 선택하면 i-net에서 제공하는 제품들의 목록을 볼 수 있습니다. 이 중에서 여러분은 i-net Merlia를 선택하여 다운로드하면 됩니다. Database Laboratory
15
JDBC Driver Download (2)
merlia 드라이버 설치 i-net에서 드라이버를 받았다면 마이크로소프트의 드라이버와 동일한 방식으로 압축을 풀고 드라이버를 classpath에 등록해주면 됩니다. 본 강좌에서는 “C:\JDBC\Merlia”에 설치하였습니다. Database Laboratory
16
JDBC Driver 설정 (2) Classpath 설정
시스템 변수에서 새로 만 들기를 클릭하여 MERLIA 라는 변수를 생성한다. 변수값은 본인이 설치한 JDBC드라이버 위치에 존 재하는 Merlia.jar 파일을 적어준다. MSJDBC변수를 등록했던 방법과 동일하게 merlia.jar 파일을 등록합니다. Database Laboratory
17
JDBC Driver 설정 (2) Classpath 설정
Classpath 변수를 편집하 여 MERLIA변수를 Classpath 변수에 등록한 다. classpath에 방금 등록한 merlia변수를 추가해줍니다. 지금까지 JDBC드라이버에 대하여 알아보고, 각 드라이버를 설치하는 과정을 살펴보았습니다. 다른 드라이버의 설치 방법도 이와 비슷합니다. 다음 강좌에서는 설치한 드라이버를 이용한 JAVA프로그램을 작성해보도록 하겠습니다. Database Laboratory
18
Statement 인터페이스 예제 1 : Staetment를 통한 질의 처리 JDBC를 위한 클래스
MS-JDBC드라이버를 통해 MS-SQL에 연결하기 위한 접근자 SQL서버에서 수행할 질의 SQL서버에 세션연결을 수행할 Connection 인터페이스 SQL 명령을 수행하고 그 결과값을 저장하기 위해 정의된 Statement 객체 ① 데이터베이스 주소 ② ③ ④ ⑤ 포트번호 DB명 MS사의 JDBC를 이용하여 데이터베이스에 접근하고 Statement를 통해 쿼리를 수행하여 데이터를 처리하는 과정을 살펴보도록 하겠습니다. 우선 JDBC사용을 위한 패키지를 import시킵니다. 이 패키지에는 JDBC API를 인터페이스로 정의되어 있습니다. 데이터베이스 연결을 위한 JDBC-URL(연결기술자)부분입니다. URL에는 접속하려는 방식(ODBC라면 ODBC로 변경)과 함께 연결할 서버의 주소(필요한 경우 포트번호도 나열), 사용하고자 하는 데이터베이스 이름을 작성합니다. 본래 MS-SQL 서버의 경우 1433번 포트를 사용하기 때문에 생략 가능하지만 hyacinth의 경우 2433번을 사용하기 때문에 반드시 명시해 주어야합니다. 연결용 기술자를 지정했으면 JDBC 드라이버 로딩을 위해 Class.forName을 통해 드라이버를 지정해주어야 합니다. 하지만 이 과정의 경우 3.0버전에서는 생략 가능하게 변경되었습니다. 그리고 실행할 질의문을 작성합니다. SQL서버의 연결객체를 선언합니다. 쿼리를 실행하기 위한 Statement 객체를 선언합니다. 4, 5의 과정은 인터페이스이므로 우선 null형식으로 선언해두고 관련 메소드를 통해 객체를 할당받게 됩니다. Database Laboratory
19
Statement 인터페이스 예제 1 : Staetment를 통한 질의 처리
DriverManager를 통한 Connection 성립 Connection에서는 Session을 성립시킴 데이터 처리 과정 Statement를 통해 질의를 수행하고 ResultSet의 결과를 반환 ResultSet의 next()메소드를 통해 각 Row의 데이터를 가져오고 getXXX()메소드를 통해 각 Column의 데이터를 지정한 타입으로 가져옮 next()를 통해 더 이상 참조할 결과가 없다면 false를 반환 리소스 확보를 위해 연결 종료 ① ② 계정과 암호 ③ 드라이버매니저를 통해 연결과 세션을 성립합니다. 매개변수로 이전에 선언한 연결기술자와 함께 SQL서버 접속을 위한 계정과 비밀번호를 지정합니다. 연결 객체를 통해 statement 객체를 할당하고 statement객체(stmt)를 통해 질의를 실행시킵니다. 실행된 질의의 반환 값에 따라 ResultSet 등을 사용하여 데이터를 처리합니다. 모든 처리가 끝났다면 SQL서버와의 연결을 해제하여 네트워크 연결등의 리소스를 확보합니다. Database Laboratory
20
Statement 인터페이스 예제 1 : Staetment를 통한 질의 처리 질의문 소스파일 실행클래스
Select OrderID, CustomerID, EmployeeID from orders 소스파일 Ex1.java 실행클래스 Ex1 앞서 다룬 예제를 실행시킨 결과입니다. 소스파일은 Ex1.java입니다. Database Laboratory
Similar presentations