在 Web Server 7.0 中,JDBC 連線池會透過 jdbc-resource 元素進行配置。下面列出的步驟,可以配置最簡單的連線池。在此例中,連線池使用 Oracle JDBC 驅動程式。
啟動 wadm。
建立 JDBC 資源。
使用基本配置建立 JDBC 資源。其他屬性可用於微調連線池。請參閱線上手冊以瞭解更多屬性和範例。
wadm> create-jdbc-resource --config=test --datasourceclass=oracle.jdbc.pool.OracleDataSource jdbc/MyPool |
配置供應商特有特性。
此特性用於配置驅動程式的供應商特有特性。以下範例中的 url、user 與 password 特性將增加至 JDBC 資源。
wadm> add-jdbc-resource-userprop --config=test --jndi-name=jdbc/MyPool url=jdbc:oracle:thin:@hostname:1521:MYSID user=myuser password=mypassword |
啟用連線驗證。
您可為連線池啟用連線驗證。如果使用此選項,連線在傳遞至應用程序之前會經過驗證。這可讓 Web 伺服器自動重新建立資料庫連接 (由於網路故障或資料庫伺服器當機,資料庫不可用時)。對連接進行驗證會耗用額外的時間,並且會略微降低效能。
wadm> set-jdbc-resource-prop --config=test --jndi-name=jdbc/MyPool connection-validation-table-name=test connection-validation=table |
變更預設池設定。
在此例中,讓我們變更連線的最大數目。
wadm> set-jdbc-resource-prop --config=test --jndi-name=jdbc/MyPool max-connections=100 |
部署配置。
wadm> deploy-config test |
提供包含 JDBC 驅動程式的 JAR 檔案。
您需要為伺服器提供可實作驅動程式的類別。可使用的方法有兩種:
將驅動程式的 JAR 檔案複製到伺服器實例程式庫目錄。這是最簡單的方法,因為實例程式庫目錄中的 JAR 檔案會自動載入並提供給伺服器。
修改 JVM 的 class-path-suffix 以包含 JDBC 驅動程式的 JAR 檔案。
wadm> set-jvm-prop --config=test class-path-suffix=/export/home/lib/classes12.jar |
在 Web 應用程式中的用法。
修改 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(); |