Tomcat 6下配置使用Proxool的JNDI 连接池

http://203.208.39.132/search?q=cache:mMLgI8lnoUcJ:jim19770812.blogspot.com/2009/07/tomcat-6proxooljndi.html+Proxool&cd=6&hl=zh-CN&ct=clnk&gl=cn&st_usg=ALhdy2_9TryG0T5cNF69XvxIhVRBy766XA

 

tomcat自带的JNDI连接池挺糟糕的,开发时用用还行,生产环境最好还是换成比的成熟一些的连接池,比如Proxool就不错,用它做过好几个项目,不是一般的稳定。

下面讲述一下如何在tomcat 6下配置Proxool的JNDI连接池。

环境


o/s:ubuntu 9.04
tomcat:6.0.18
jdk:2.6.28-13-generic
proxool:0.9.1


1.复制 proxool


proxool-0.9.1.jar
proxool-cglib.jar
commons-logging-1.0.4.jar

复制到<tomcat_home>/lib目录下


2.修改<tomcat_home>/conf/context.xml
打开

<tomcat_home>/conf/context.xml


在标签

<context>
</congext>

加入下面的内容

 
<Resource 
    name="jdbc/jndidb" 
    auth="Container" 
    type="javax.sql.DataSource" 
    factory="org.logicalcobwebs.proxool.ProxoolDataSource" 
    proxool.alias="hrs" 
    user="root" 
    password="jim" 
    delegateProperties="foo=bar" 
    proxool.driver-url="jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=UTF-8" 
    proxool.driver-class="com.mysql.jdbc.Driver" 
    proxool.house-keeping-sleep-time="900000" 
    proxool.maximum-active-time="5" 
    proxool.prototype-count="10" 
    proxool.statistics="1m,15m,1d" 
    proxool.simultaneous-build-throttle="10" 
    proxool.minimum-connection-count="5" 
    proxool.maximum-connection-count="25" 
    proxool.house-keeping-test-sql="select now()" 
    proxool.test-before-use="true"/> 


3.修改<tomcat_home>/conf/web.xml
打开

<tomcat_home>/conf/context.xml


ok,配置完成,下面写个简单的servlet测试一下

4.测试用的 servlet
代码如下

 
package com.demo; 
 
import java.io.IOException; 
import java.io.PrintWriter; 
 
import javax.naming.Context; 
import javax.naming.InitialContext; 
import javax.naming.NamingException; 
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import javax.sql.DataSource; 
 
public class DemoServlet extends HttpServlet { 
 
 private static final long serialVersionUID = -911762482064261559L; 
 
 @Override 
 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 
  PrintWriter out = resp.getWriter(); 
     Context ctx; 
  try { 
   ctx = new InitialContext(); 
   DataSource dataSource = (DataSource)ctx.lookup("java:comp/env/jdbc/jndidb"); 
   if (dataSource != null){ 
    out.println(dataSource.getClass()); 
   }else{ 
    out.println("jndi configure failure!"); 
   } 
  } catch (NamingException e) { 
   e.printStackTrace(); 
  }   
 } 
} 


访问这个servlet
http://localhost:8080/servlet-demo/demo

如果配置的没错的话,就会看到如下的内容

class org.logicalcobwebs. proxool.ProxoolDataSource

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值