2011년 6월 9일 목요일

JDBC 3.0 새로운 기능

3. JDBC 3.0
JDBCTM 3.0 API 에는, JDBC 코어 API로 불린다. java.sql 및 JDBC 옵션 패키지 API 로 불리는 javax.sql 가 포함됩니다. 이 완전한 JDBC API 는 JavaTM 2 SDK, Standard Editio(J2SETM), 버젼 1.4 에 포함되어 있습니다. javax.sql 패키지는 JDBC API 의 기능을 클라이언트측 API 로부터 서버측 API 에 확장해서 , JavaTM 2 SDK, Enterprise Editio(J2EETM)의 필수 부분입니다. (J2EE 에도 완전한 JDBC API 가 포함되어 있습니다. JDBC 3.0 API 의 신기능은 J2EE 버젼 1.3 에 포함됩니다. )
JDBC 3.0 API 에는 다음에 포함되어 있습니다.
  • JDBC 2.1 코어 API
  • JDBC 2.0 옵션 패키지 API (JDBC 2.1 코어 API 와 JDBC 2.0 옵션 패키지 API 를 아울러 JDBC 2.0 API 라고 부릅니다. )
  • JDBC 1.2 API
  • 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 의 부분
주: 신기능의 상당수는 옵션입니다. 따라서, 드라이버 및 드라이버가 서포트하는 기능에는 몇 개의 바리에이션이 있습니다. 기능을 사용하기 전에, 그 기능이 서포트되고 있는지 어떤지를 드라이버의 문서로 반드시 확인해 주세요.
주: 클래스 SQLPermissio가 JavaTM 2 SDK, Standard Edition, 버젼 1.3 릴리스로 추가되었습니다. 이 클래스를 사용하면(자), 테이블명, 열데이터등의 정보를 격납하는 DriverManager 에 관련한 로그 Stream에의 무권한에서의 액세스를 방지할 수 있습니다.

java.sql 패키지에 포함되는 것
  • java.sql 패키지는, 다음의 용도의 API 를 포함하고 있습니다.
  • DriverManager 기능을 개입시킨 데이터 소스와의 접속
  • DriverManager 클래스 -- 드라이버와의 접속
  • SQLPermissio클래스 -- 애플릿등의 시큐러티 매니저내에서 실행되는 코드가 DriverManager 를 개입시켜 로그 Stream을 설정하려고 할 때 액세스권을 허가한다.
  • Driver 인터페이스 -- JDBC 테크놀러지에 근거하는 드라이버 (JDBC 드라이버)의 등록 및 접속을 API 에 제공한다. 통상은 DriverManager 클래스만이 사용한다.
  • DriverPropertyInfo 클래스 -- JDBC 드라이버의 프롭퍼티를 제공한다. 일반 유저는 사용하지 않는다.
  • 데이타베이스에의 SQL 문의 송신
  • Statement -- 기본 SQL 문을 송신한다
  • PreparedStatement -- 준비된 문장 또는 기본 SQL 문을 송신한다 (Statement 로부터 파생)
  • CallableStatement – 프로시져를 호출한다(PreparedStatement 로부터 파생)
  • Connectio인터페이스 -- 문을 작성해, 접속과 그 프롭퍼티를 관리하는 메소드를 제공한다.
  • Savepoint -- 트랜잭션(transaction)에 대해 세이브 포인트를 제공한다.
  • Query - 결과의 취득과 갱신
  • ResultSet 인터페이스


SQL 형을 Java 프로그램 언어의 클래스 및 인터페이스에 표준 매핑
  • Array 인터페이스 -- SQL ARRAY 를 매핑 한다
  • Blob 인터페이스 -- SQL BLOB 를 매핑 한다
  • Clob 인터페이스 -- SQL CLOB 를 매핑 한다
  • Date 클래스 -- SQL DATE 를 매핑 한다
  • Ref 인터페이스 -- SQL REF 를 매핑 한다
  • Struct 인터페이스 -- SQL STRUCT 를 매핑 한다
  • Time 클래스 -- SQL TIME 를 매핑 한다
  • Timestamp 클래스 -- SQL TIMESTAMP 를 매핑 한다
  • Types 클래스 -- SQL 형의 정수를 제공한다
  • SQL 유저 정의형 (UDT)을 Java 프로그램 언어의 클래스에 커스텀 매핑
  • SQLData 인터페이스 -- 이 클래스의 인스턴스에의 UDT 의 매핑을 지정한다
  • SQLInput 인터페이스 -- Stream로부터 UDT 속성을 읽어들이는 메소드를 제공한다
  • SQLOutput 인터페이스 -- Stream에 UDT 속성을 기입하는 메소드를 제공한다.


메타데이타
  • DatabaseMetaData 인터페이스 -- 데이타베이스에 관한 정보를 제공한다
  • ResultSetMetaData 인터페이스 -- ResultSet 오브젝트의 열에 관한 정보를 제공한다
  • ParameterMetaData 인터페이스 -- PreparedStatement 커멘드의 파라미터에 관한 정보를 제공한다


예외
  • SQLExceptio-- 데이터 액세스의 장해등의 경우에 메소드가 슬로우 한다
  • SQLWarning -- 경고를 나타내기 위해서(때문에) 슬로우 된다
  • DataTruncatio-- 데이터를 잘라 버릴 수 있었던 가능성이 있는 것을 나타내기 위해서(때문에) 슬로우 된다
  • BatchUpdateExceptio-- 배치 갱신의 커멘드가 모든 것은 정상적으로 실행되지 않았던 것을 나타내기 위해서(때문에) 슬로우 된다


JDBC 3.0 API 로 도입된 java.sqljavax.sql 의 기능
  • 풀문 -- 풀 접속에 관련한 문장을 재이용한다
  • 세이브 포인트 -- 지정된 세이브 포인트까지 트랜잭션(transaction)를 롤백(rollback) 한다
  • ConnectionPoolDataSource 에 정의된 프롭퍼티 -- 접속의 풀 방법을 지정한다
  • PreparedStatement 오브젝트의 파라미터의 메타데이타
  • 자동 생성된 열로부터 값을 취득한다
  • 동시에 오픈된 CallableStatement 오브젝트로부터 돌려주어진 복수의 ResultSet 오브젝트를 가진다
  • CallableStatement 오브젝트에의 파라미터를 이름과 인덱스에 의해 식별한다
  • ResultSet 보관 유지 기능 -- 트랜잭션(transaction)의 종료로 커서를 오픈 상태 로 유지할까 클로우즈 상태 로 유지하는지를 지정한다
  • Ref 오브젝트가 참조하는 SQL 구조화형 인스턴스를 취득 및 갱신한다
  • BLOB, CLOB, ARRAY, 및 REF 의 각 치를 프로그램에 의해 갱신한다
  • java.sql.Types.DATALINK 데이터형의 추가 -- JDBC 드라이버가 데이터 소스의 외부에 격납된 오브젝트에 액세스 할 수 있도록 한다
  • SQL 형 계층을 취득하는 메타데이타의 추가

댓글 없음:

댓글 쓰기

ETL 솔루션 환경

ETL 솔루션 환경 하둡은 대용량 데이터를 값싸고 빠르게 분석할 수 있는 길을 만들어줬다. 통계분석 엔진인 “R”역시 하둡 못지 않게 관심을 받고 있다. 빅데이터 역시 데이터라는 점을 볼때 분산처리와 분석 그 이전에 데이터 품질 등 데이...