首页 > 其他 > 详细

Jndi and c3p0 in Tomcat

时间:2015-03-26 10:26:00      阅读:237      评论:0      收藏:0      [点我收藏+]

Tomcat 中Jndi是使用Tomcat自带的连接池
抛弃Tomcat自带的连接池。使用c3p0 。

环境:Tomcat 5.5.20
下面配置只适合Tomcat 5.5.X


下面来看Jndi 与 c3p0 结合:
c3p0 下载地址:http://nchc.dl.sourceforge.net/sourceforge/c3p0/c3p0-0.9.0.4.bin.zip
把 c3p0-0.9.0.4.jar 放到应用服务的WEB-INF/lib目录下。如:DBTest/WEB-INF/lib

1.在server.xml中<Context></Context>内加<Resource />,完整的示例:

<Context path="/DBTest" docBase="DBTest"
        debug="5" reloadable="true" crossContext="true">
<Resource auth="Container"
 driverClass="com.mysql.jdbc.Driver"
                                    maxPoolSize="50" minPoolSize="2" acquireIncrement="2"
                                    name="jdbc/connPool" user="root" password=""
                                    factory="org.apache.naming.factory.BeanFactory"
                                    type="com.mchange.v2.c3p0.ComboPooledDataSource"
                                    jdbcUrl="jdbc:mysql://localhost:3306/test" />
</Context>

2.在web.xml添加:

  <resource-ref>
      <description>DB Connection</description>
      <res-ref-name>jdbc/connPool</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
  </resource-ref>

3.测试页面testConnPool.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<sql:query var="rs" dataSource="jdbc/connPool">
select id, typename from text
</sql:query>

<html>
  <head>
    <title>DB Test Conn Pool c3p0 and Jndi</title>
  </head>
  <body>

  <h2>Results</h2>
  
<c:forEach var="row" items="${rs.rows}">
    id: ${row.id}<br/>
    name: ${row.typename}<br/>
</c:forEach>

  </body>
</html>

 

Jndi and c3p0 in Tomcat

原文:http://www.cnblogs.com/koal/p/4367676.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!