首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Proxool 連接池整合 HSQLDB 完整實戰:四種配置模式與 Web 應用部署

     編輯:Java 綜合教學

Proxool 連接池整合 HSQLDB 完整實戰:四種配置模式與 Web 應用部署

本文記錄在 Eclipse + JDK 8 環境下,使用 Proxool 0.9.1 連接池管理 HSQLDB 數據庫的完整實踐,涵蓋數據庫啟動、四種配置方式(Java 硬編碼、Properties 文件、XML 文件、Servlet 透明模式)及 Tomcat 部署驗證。

環境準備

  • HSQLDB:hsqldb.jar,啟動 Server 與 DatabaseManagerSwing 客戶端
  • Proxool:proxool-0.9.1.jar、jarjar-0.6.jar、cglib-nodep-2.1_3.jar、proxool-cglib.jar
  • Commons 依賴:dbcp、io、lang、logging、pool 等

HSQLDB 快速啟動

  1. Run As → Java Application 運行 org.hsqldb.server.Server 啟動服務端
  2. Run As → Java Application 運行 org.hsqldb.util.DatabaseManagerSwing,選 HSQL Database Engine Server,URL jdbc:hsqldb:hsql://localhost/,用戶 SA,密碼空,連接驗證

四種 Proxool 配置模式

1. Java 硬編碼配置

Properties info = new Properties();
info.setProperty("proxool.maximum-connection-count", "20");
info.setProperty("proxool.house-keeping-test-sql", "SELECT CURRENT_DATE");
info.setProperty("user", "sa"); info.setProperty("password", "");

String alias = "test";
String url = "proxool." + alias + ":" + "org.hsqldb.jdbc.JDBCDriver" + ":" + "jdbc:hsqldb:hsql://localhost/";

Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
Connection conn = DriverManager.getConnection(url, info);

2. Properties 文件配置

proxool.properties:

jdbc-0.proxool.alias=property-test
jdbc-0.proxool.driver-url=jdbc:hsqldb:hsql://localhost/
jdbc-0.proxool.driver-class=org.hsqldb.jdbc.JDBCDriver
jdbc-0.user=sa
jdbc-0.password=
jdbc-0.proxool.maximum-connection-count=10
jdbc-0.proxool.house-keeping-test-sql=SELECT CURRENT_DATE

代碼:

Properties info = new Properties();
info.load(getClass().getResourceAsStream("/proxool.properties"));
PropertyConfigurator.configure(info);
Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
Connection conn = DriverManager.getConnection("proxool.property-test");

3. XML 文件配置

proxool.xml:

<proxool-config>
  <proxool>
    <alias>xml-test</alias>
    <driver-url>jdbc:hsqldb:hsql://localhost/</driver-url>
    <driver-class>org.hsqldb.jdbc.JDBCDriver</driver-class>
    <driver-properties>
      <property name="user" value="SA"/>
      <property name="password" value=""/>
    </driver-properties>
    <maximum-connection-count>10</maximum-connection-count>
    <house-keeping-test-sql>SELECT CURRENT_DATE</house-keeping-test-sql>
  </proxool>
</proxool-config>

代碼:

JAXPConfigurator.configure(
  new InputStreamReader(getClass().getResourceAsStream("/proxool.xml")), false);
Connection conn = DriverManager.getConnection("proxool.xml-test");

4. Servlet 透明模式 + Tomcat 部署

web.xml 註冊 Proxool 管理 Servlet 與配置加載 Servlet:

<servlet>
  <servlet-name>proxool</servlet-name>
  <servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet</servlet-class>
</servlet>
<servlet-mapping>
  <servlet-name>proxool</servlet-name>
  <url-pattern>/admin</url-pattern>
</servlet-mapping>

<servlet>
  <servlet-name>ServletConfigurator</servlet-name>
  <servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
  <init-param>
    <param-name>xmlFile</param-name>
    <param-value>WEB-INF/proxool.xml</param-value>
  </init-param>
  <load-on-startup>1</load-on-startup>
</servlet>

訪問 https://localhost:8080/項目/admin 顯示連接池監控頁面即部署成功。

Proxool Admin 監控頁面

總結

Proxool 雖屬老牌連接池,但其多配置模式(Java/Properties/XML/Servlet)靈活適配不同架構階段。實戰中建議:開發期用 Java/Properties 快速驗證,生產環境採用 XML + ServletConfigurator 實現配置與代碼分離、熱加載友好。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved