proxool使用(DataSource、MySQL)

本文详细介绍了如何使用Proxool配置数据库连接池,并通过示例代码展示了如何在Java Web应用中设置和使用Proxool连接池。包括proxool.xml配置文件、web.xml和context.xml的具体设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Proxool使用,通过DataSource,简单记录下,做个备份,参考了网上很多的资料,在此表示感谢。

proxool.xml

  1. <?xmlversion="1.0"encoding="gbk"?>
  2. <!--
  3. Document:proxool.xml
  4. Createdon:2008年12月2日,下午1:09
  5. Author:zhappy
  6. Description:
  7. Purposeofthedocumentfollows.
  8. -->
  9. <something-else-entirely>
  10. <proxool>
  11. <alias>test</alias>
  12. <driver-url>jdbc:mysql://127.0.0.1:3306/happy</driver-url>
  13. <driver-class>com.mysql.jdbc.Driver</driver-class>
  14. <driver-properties>
  15. <propertyname="user"value="happy"/>
  16. <propertyname="password"value="happy"/>
  17. </driver-properties>
  18. <house-keeping-sleep-time>90000</house-keeping-sleep-time>
  19. <house-keeping-test-sql>selectcurdate()</house-keeping-test-sql>
  20. <simultaneous-build-throttle>150</simultaneous-build-throttle>
  21. <prototype-count>3</prototype-count>
  22. <maximum-connection-count>100</maximum-connection-count>
  23. <minimum-connection-count>3</minimum-connection-count>
  24. </proxool>
  25. </something-else-entirely>

web.xml

  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <web-appversion="2.5"xmlns="http://java.sun.com/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  3. <resource-ref>
  4. <description>DBConnection</description>
  5. <res-ref-name>jdbc/TestDB</res-ref-name>
  6. <res-type>javax.sql.DataSource</res-type>
  7. <res-auth>Container</res-auth>
  8. </resource-ref>
  9. <servlet>
  10. <servlet-name>ServletConfigurator</servlet-name>
  11. <servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
  12. <init-param>
  13. <param-name>xmlFile</param-name>
  14. <param-value>WEB-INF/proxool.xml</param-value>
  15. </init-param>
  16. <load-on-startup>1</load-on-startup>
  17. </servlet>
  18. <servlet>
  19. <servlet-name>Admin</servlet-name>
  20. <servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet</servlet-class>
  21. </servlet>
  22. <servlet-mapping>
  23. <servlet-name>Admin</servlet-name>
  24. <url-pattern>/admin</url-pattern>
  25. </servlet-mapping>
  26. <session-config>
  27. <session-timeout>
  28. 30
  29. </session-timeout>
  30. </session-config>
  31. <welcome-file-list>
  32. <welcome-file>index.jsp</welcome-file>
  33. </welcome-file-list>
  34. </web-app>

context.xml(META-INF文件夹中,可以配置多应用)

  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <ContextantiJARLocking="true"path="/test">
  3. <!--Resourcename="jdbc/TestDB"auth="Container"
  4. type="javax.sql.DataSource"
  5. maxActive="100"maxIdle="30"maxWait="10000"
  6. username="happy"password="happy"
  7. driverClassName="com.mysql.jdbc.Driver"
  8. url="jdbc:mysql://localhost:3306/happy"/-->
  9. <Resource
  10. name="jdbc/TestDB"
  11. auth="Container"
  12. type="javax.sql.DataSource"
  13. factory="org.logicalcobwebs.proxool.ProxoolDataSource"
  14. proxool.alias="test"
  15. user="happy"
  16. password="happy"
  17. proxool.driver-url="jdbc:mysql://127.0.0.1:1521/happy"
  18. proxool.driver-class="com.mysql.jdbc.Driver"/>
  19. </Context>

Conn.java(通过数据源获取连接的类)

  1. packagecn.happy;
  2. importjava.sql.Connection;
  3. importjavax.naming.Context;
  4. importjavax.naming.InitialContext;
  5. importjavax.sql.DataSource;
  6. /**
  7. *
  8. *@authorzhappy
  9. */
  10. publicclassConn{
  11. publicConn(){
  12. }
  13. publicstaticsynchronizedConnectionget()throwsException{
  14. Contextctx=newInitialContext();
  15. Contextenvctx=(Context)ctx.lookup("java:comp/env");
  16. DataSourceds=(DataSource)envctx.lookup("jdbc/TestDB");
  17. returnds.getConnection();
  18. }
  19. }

index.jsp

  1. <%@pagelanguage="java"pageEncoding="GB2312"%>
  2. <%@pageimport="java.sql.*"%>
  3. <%@pageimport="javax.sql.*"%>
  4. <%@pageimport="java.util.*"%>
  5. <%@pageimport="java.io.*"%>
  6. <%@pageimport="javax.naming.*"%>
  7. <%@pageimport="cn.happy.*"%>
  8. <html>
  9. <head>
  10. <title>测试</title>
  11. </head>
  12. <body>
  13. <%
  14. Connectionconn=null;
  15. Statementst=null;
  16. ResultSetrs=null;
  17. try{
  18. conn=Conn.get();
  19. st=conn.createStatement();
  20. rs=st.executeQuery("select*fromgoodsmain");
  21. while(rs.next()){
  22. out.print(rs.getString(3));%><br><%
  23. }
  24. st.close();
  25. rs.close();
  26. conn.close();
  27. }catch(Exceptione){
  28. e.printStackTrace();
  29. }
  30. %>
  31. </body>
  32. </html>

http://localhost:8080/test可以访问index.jsp

http://localhost:8080/test/admin可以访问连接池监控

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值