전체 프로파일 및 Liberty 프로파일의 구성 차이점: dataSource 및 jdbcDriver 요소
Liberty 프로파일의 dataSource와 전체 프로파일의 데이터 소스 사이에는 몇몇 구성 차이점이 있습니다.
- 이름이 다른 데이터 소스 특성
- ifxIFX_LOCK_MODE_WAIT로, 전체 프로파일의 informixLockModeWait입니다.
- supplementalJDBCTrace로, 전체 프로파일의 supplementalTrace입니다.
- 값이 다른 데이터 소스 특성
- beginTranForResultSetScrollingAPIs로, Liberty 프로파일에서는 기본적으로 true입니다.
- beginTranForVendorAPIs로, Liberty 프로파일에서는 기본적으로 true입니다.
- connectionSharing으로, Liberty 프로파일에서는 기본적으로 MatchOriginalRequest입니다.
- statementCacheSize로, Liberty 프로파일에서는 기본적으로 10입니다.
- 데이터 소스의 connectionSharing 특성
- Liberty 프로파일에서는 connectionSharing을 MatchOriginalRequest 또는 MatchCurrentState로 구성할 수 있습니다. 기본적으로, MatchOriginalRequest입니다.
- 전체 프로파일이 connectionSharing을 미세한 방식으로 구성할 수 있으며, 여기서 개별 연결 특성은 원래 연결 요청 또는 현재 연결 상태를 기반으로 일치될 수 있습니다. 전체 프로파일, connectionSharing은 현재 연결 상태를 기반으로 일치되는 연결 특성을 표시하는 비트 조합입니다. 전체 프로파일에서, 0 값은 원래 연결 요청을 기반으로 하는 모든 특성과 일치한다는 것을 의미하며, -1 값은 현재 연결 상태를 기반으로 하는 모든 특성과 일치한다는 것을 의미합니다. 전체 프로파일의 기본값은 1이며, 격리 레벨은 현재 연결 상태를 기반으로 일치되며 기타 모든 특성은 원래 연결 요청을 기반으로 일치된다는 것을 의미합니다.
- 데이터 소스의 지속 기간 특성지속 기간 특성은 선택적으로 Liberty 프로파일의 단위로 지정될 수 있습니다. 예를 들면 다음과 같습니다.
dataSource 요소의 허용된 시간 단위와 형식은 server.xml 파일의 구성 요소의 내용을 참조하십시오. Liberty 프로파일에서의 단위 생략은 전체 프로파일에 사용되는 기본 단위와 같습니다.<dataSource id="informix" jndiName="jdbc/informix" queryTimeout="5m" ...> <properties.informix ifxIFX_LOCK_MODE_WAIT="120s" .../> </dataSource>
- JDBC 드라이버의 구성
- Liberty 프로파일에서, XA 사용 가능 및 비-XA 사용 가능 데이터 소스 구현 클래스에 대해 다른 jdbcDriver 요소를 구성하는 동일 방법을 사용하거나, 모두에 대해 단일 jdbcDriver 요소를 사용할 수 있습니다. 다중 jdbcDriver 요소를 정의해도 다른 클래스 로더가 사용되지 않습니다. Liberty 프로파일에서, jdbcDriver 요소는 항상 공유 라이브러리의 클래스 로더와 이 로더를 사용하여 구성된 항목과 함께 사용합니다.
- 전체 프로파일에서, JDBC 제공자는 파일과 원시 파일로 압축되는 JDBC 드라이버 JAR을 가리키도록 정의됩니다. 별도의 JDBC 제공자는 XA 사용 가능 및 비-XA 사용 가능 데이터 소스 구현 클래스에 대해 정의되어야 합니다.
공통으로 사용된 일부 JDBC 드라이버에 대해, Liberty 프로파일은 이름을 기준으로 하는 데이터 소스 구현 클래스 이름을 드라이버 JAR이라고 추론합니다. 이 경우, 구현 클래스 이름을 생략할 수 있습니다. 예를 들면 다음과 같은 경우가 있습니다.<jdbcDriver id="Derby" libraryRef="DerbyLib"/> <library id="DerbyLib"> <fileset dir="C:/Drivers/derby" includes="derby.jar" /> </library>
javax.sql.DataSource, javax.sql.ConnectionPoolDataSource, javax.sql.XADataSource와 같이 기본 구현 클래스를 대체하려는 경우, 선택적 특성을 사용할 수 있습니다.
다음 예제는 Liberty 프로파일에서 선택된 javax.sql.ConnectionPoolDataSource 및 기본 javax.sql.XADataSource 구현을 대체하는 방법을 보여 줍니다.
jdbcDriver 요소에 관한 자세한 정보는 server.xml 파일의 구성 요소의 내용을 참조하십시오.<jdbcDriver id="Derby" libraryRef="DerbyLib" javax.sql.XADataSource="org.apache.derby.jdbc.EmbeddedXADataSource" javax.sql.ConnectionPoolDataSource="org.apache.derby.jdbc.EmbeddedConnectionPoolDataSource"/> <library id="DerbyLib"> <fileset dir="C:/Drivers/derby" includes="derby.jar" /> </library>