Sun Java System Web Server 7.0 관리자 설명서

ProcedureJDBC 연결 풀을 만드는 방법

  1. wadm을 시작합니다.

  2. JDBC 자원을 만듭니다.

    기본 구성으로 JDBC 자원을 만듭니다. 다른 속성을 사용하여 연결 풀을 미세 조정할 수 있습니다. 추가 속성 및 예는 설명서 페이지를 참조하십시오.


    wadm> create-jdbc-resource --config=test 
    --datasourceclass=oracle.jdbc.pool.OracleDataSource jdbc/MyPool
  3. 공급업체별 등록 정보를 구성합니다.

    등록 정보는 드라이버의 공급업체별 등록 정보를 구성하는 데 사용됩니다. 아래 예에서는 등록 정보 url, userpassword가 JDBC 자원에 추가됩니다.


    wadm> add-jdbc-resource-userprop --config=test --jndi-name=jdbc/MyPool 
    url=jdbc:oracle:thin:@hostname:1521:MYSID user=myuser password=mypassword
  4. 연결 확인을 활성화합니다.

    풀에 대해 연결 확인을 활성화할 수 있습니다. 이 옵션을 사용하면 연결이 응용 프로그램으로 전달되기 전에 확인 과정을 거칩니다. 따라서 네트워크 고장 또는 데이터베이스 서버 장애로 인해 데이터베이스를 사용할 수 없는 경우 서버가 자동으로 데이터베이스 연결을 다시 설정할 수 있습니다. 연결 확인에는 추가 오버헤드가 필요하므로 성능이 약간 저하될 수 있습니다.


    wadm> set-jdbc-resource-prop --config=test --jndi-name=jdbc/MyPool 
    connection-validation-table-name=test connection-validation=table
  5. 기본 풀 설정을 변경합니다.

    이 예에서는 최대 연결 수를 변경합니다.


    wadm> set-jdbc-resource-prop --config=test --jndi-name=jdbc/MyPool 
    max-connections=100
  6. 구성을 배포합니다.


    wadm> deploy-config test
  7. JDBC 드라이버를 포함하는 Jar 파일을 지정합니다.

    서버에는 드라이버를 구현하는 클래스를 제공해야 합니다. 이 작업은 다음과 같은 두 가지 방법으로 수행할 수 있습니다.

    • 드라이버의 jar 파일을 서버 인스턴스 lib 디렉토리에 복사합니다. 인스턴스 lib 디렉토리에 포함된 jar 파일이 자동으로 로드되어 서버에서 사용할 수 있게 되기 때문에 이 방법이 가장 간단한 방법입니다.

    • JVM의 class-path-suffix가 JDBC 드라이버의 jar 파일을 포함하도록 수정합니다.


      wadm> set-jvm-prop  --config=test class-path-suffix=/export/home/lib/classes12.jar
  8. 웹 응용 프로그램에서의 사용법

    • WEB-INF/web.xml 수정


      <web-app>
      ...
        <resource-ref>
          <description>JDBC Connection Pool</description>
          <res-ref-name>jdbc/myJdbc</res-ref-name>
          <res-type>javax.sql.DataSource</res-type>
          <res-auth>Container</res-auth>
        </resource-ref>
      ...
      </web-app>
    • WEB-INF/sun-web.xml 수정


      <sun-web-app>
      ...
        <resource-ref>
          <res-ref-name>jdbc/myJdbc</res-ref-name>
          <jndi-name>jdbc/MyPool</jndi-name>
        </resource-ref>
      ...
      </sun-web-app>
    • 연결 풀 사용


      Context initContext = new InitialContext();
          Context webContext = (Context)context.lookup("java:/comp/env");
      
          DataSource ds = (DataSource) webContext.lookup("jdbc/myJdbc");
          Connection dbCon = ds.getConnection();