Thursday, July 02, 2009

JDBC 3.0 새로운 기능

 

출처 깜찍이의 블로그 | 으라차차
원문 http://blog.naver.com/smurpettt/150000477962
 
JDBC 3.0
JDBCTM 3.0 API 에는, JDBC 코어 API로 불린다. java.sql JDBC 옵션 패키지 API 로 불리는 javax.sql 가 포함됩니다. 완전한 JDBC API JavaTM 2 SDK, Standard Edition (J2SETM), 버젼 1.4 에 포함되어 있습니다. javax.sql 패키지는 JDBC API 의 기능을 클라이언트측 API 로부터 서버측 API 에 확장해서 , JavaTM 2 SDK, Enterprise Edition (J2EETM)의 필수 부분입니다. (J2EE 에도 완전한 JDBC API 가 포함되어 있습니다. JDBC 3.0 API 의 신기능은 J2EE 버젼 1.3 에 포함됩니다. )
 
JDBC 3.0 API 에는 다음에 포함되어 있습니다.
n         JDBC 2.1 코어 API
n         JDBC 2.0 옵션 패키지 API (JDBC 2.1 코어 API JDBC 2.0 옵션 패키지 API 를 아울러 JDBC 2.0 API 라고 부릅니다. )
n         JDBC 1.2 API
n         JDBC 1.0 API
 
클래스, 인터페이스, 메소드, 필드, constructor 및 예외에는, 이것들이 언제 Java 플랫폼에 도입되었는지를 나타내는 다음의 since 태그가 있습니다. since 태그가 JDBC API JavadocTM 의 코멘트로 사용되고 있는 경우, 그 의미는 다음과 같습니다.
since 1.4 -- JDBC 3.0 API 에 새롭게 추가. J2SE 플랫폼, 버젼 1.4 의 부분
since 1.2 -- JDBC 2.0 API 에 새롭게 추가. J2SE 플랫폼, 버젼 1.2 의 부분
since 1.1 또는 since 태그 없음 -- JDBC 1.0 API 에 새롭게 추가. JDKTM, 버젼 1.1 의 부분
 
: 신기능의 상당수는 옵션입니다. 따라서, 드라이버 및 드라이버가 서포트하는 기능에는 몇 개의 바리에이션이 있습니다. 기능을 사용하기 전에, 그 기능이 서포트되고 있는지 어떤지를 드라이버의 문서로 반드시 확인해 주세요.
: 클래스 SQLPermission JavaTM 2 SDK, Standard Edition, 버젼 1.3 릴리스로 추가되었습니다. 이 클래스를 사용하면(), 테이블명, 열데이터등의 정보를 격납하는 DriverManager 에 관련한 로그 Stream에의 무권한에서의 액세스를 방지할 수 있습니다.
 
java.sql 패키지에 포함되는 것
n         java.sql 패키지는, 다음의 용도의 API 를 포함하고 있습니다.
n         DriverManager 기능을 개입시킨 데이터 소스와의 접속
n         DriverManager 클래스 -- 드라이버와의 접속
n         SQLPermission 클래스 -- 애플릿등의 시큐러티 매니저내에서 실행되는 코드가 DriverManager 를 개입시켜 로그 Stream을 설정하려고 할 때 액세스권을 허가한다.
n         Driver 인터페이스 -- JDBC 테크놀러지에 근거하는 드라이버 (JDBC 드라이버)의 등록 및 접속을 API 에 제공한다. 통상은 DriverManager 클래스만이 사용한다.
n         DriverPropertyInfo 클래스 -- JDBC 드라이버의 프롭퍼티를 제공한다. 일반 유저는 사용하지 않는다.
n         데이타베이스에의 SQL 문의 송신
n         Statement -- 기본 SQL 문을 송신한다
n         PreparedStatement -- 준비된 문장 또는 기본 SQL 문을 송신한다 (Statement 로부터 파생)
n         CallableStatement프로시져를 호출한다(PreparedStatement 로부터 파생)
n         Connection 인터페이스 -- 문을 작성해, 접속과 그 프롭퍼티를 관리하는 메소드를 제공한다.
n         Savepoint -- 트랜잭션(transaction)에 대해 세이브 포인트를 제공한다.
n         Query - 결과의 취득과 갱신
n         ResultSet 인터페이스
 
SQL 형을 Java 프로그램 언어의 클래스 및 인터페이스에 표준 매핑
n         Array 인터페이스 -- SQL ARRAY 를 매핑 한다
n         Blob 인터페이스 -- SQL BLOB 를 매핑 한다
n         Clob 인터페이스 -- SQL CLOB 를 매핑 한다
n         Date 클래스 -- SQL DATE 를 매핑 한다
n         Ref 인터페이스 -- SQL REF 를 매핑 한다
n         Struct 인터페이스 -- SQL STRUCT 를 매핑 한다
n         Time 클래스 -- SQL TIME 를 매핑 한다
n         Timestamp 클래스 -- SQL TIMESTAMP 를 매핑 한다
n         Types 클래스 -- SQL 형의 정수를 제공한다
n         SQL 유저 정의형 (UDT) Java 프로그램 언어의 클래스에 커스텀 매핑
n         SQLData 인터페이스 -- 이 클래스의 인스턴스에의 UDT 의 매핑을 지정한다
n         SQLInput 인터페이스 -- Stream로부터 UDT 속성을 읽어들이는 메소드를 제공한다
n         SQLOutput 인터페이스 -- Stream UDT 속성을 기입하는 메소드를 제공한다.
 
메타데이타
n         DatabaseMetaData 인터페이스 -- 데이타베이스에 관한 정보를 제공한다
n         ResultSetMetaData 인터페이스 -- ResultSet 오브젝트의 열에 관한 정보를 제공한다
n         ParameterMetaData 인터페이스 -- PreparedStatement 커멘드의 파라미터에 관한 정보를 제공한다
예외
n         SQLException -- 데이터 액세스의 장해등의 경우에 메소드가 슬로우 한다
n         SQLWarning -- 경고를 나타내기 위해서(때문에) 슬로우 된다
n         DataTruncation -- 데이터를 잘라 버릴 수 있었던 가능성이 있는 것을 나타내기 위해서(때문에) 슬로우 된다
n         BatchUpdateException -- 배치 갱신의 커멘드가 모든 것은 정상적으로 실행되지 않았던 것을 나타내기 위해서(때문에) 슬로우 된다
 
JDBC 3.0 API 로 도입된 java.sql javax.sql 의 기능
n         풀문 -- 풀 접속에 관련한 문장을 재이용한다
n         세이브 포인트 -- 지정된 세이브 포인트까지 트랜잭션(transaction)를 롤백(rollback) 한다
n         ConnectionPoolDataSource 에 정의된 프롭퍼티 -- 접속의 풀 방법을 지정한다
n         PreparedStatement 오브젝트의 파라미터의 메타데이타
n         자동 생성된 열로부터 값을 취득한다
n         동시에 오픈된 CallableStatement 오브젝트로부터 돌려주어진 복수의 ResultSet 오브젝트를 가진다
n         CallableStatement 오브젝트에의 파라미터를 이름과 인덱스에 의해 식별한다
n         ResultSet 보관 유지 기능 -- 트랜잭션(transaction)의 종료로 커서를 오픈 상태 로 유지할까 클로우즈 상태 로 유지하는지를 지정한다
n         Ref 오브젝트가 참조하는 SQL 구조화형 인스턴스를 취득 및 갱신한다
n         BLOB, CLOB, ARRAY, REF 의 각 치를 프로그램에 의해 갱신한다
n         java.sql.Types.DATALINK 데이터형의 추가 -- JDBC 드라이버가 데이터 소스의 외부에 격납된 오브젝트에 액세스 할 수 있도록 한다
n         SQL 형 계층을 취득하는 메타데이타의 추가 

No comments: