woxio770 发表于 2017-1-23 09:55:40

Tomcat中的配置DBCP

  一 首先我们在Tomcat中容器中引入相应的jdbc
  首先我们应该拥有这个jdbc,如果找不到,就去相应的官网download.

  mysql-connector-java-3.1.13-bin.jar
  将上面的这个jdbc copy到tomcat/lib中去
  

  二 修改tomcat/conf中server.xml
  在server.xml中的<GlobalNamingResources>里面配置相应的数据库信息
  

  server.xml:

  <GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />

<!-- maxActive: Maximum number of dB connections in pool. Make sure you
configure your mysqld max_connections large enough to handle
all of your db connections. Set to 0 for no limit.
-->

<!-- maxIdle: Maximum number of idle dB connections to retain in pool.
Set to -1 for no limit. See also the DBCP documentation on this
and the minEvictableIdleTimeMillis configuration parameter.
-->

<!-- maxWait: Maximum time to wait for a dB connection to become available
in ms, in this example 10 seconds. An Exception is thrown if
this timeout is exceeded. Set to -1 to wait indefinitely.
-->

<!-- username and password: MySQL dB username and password for dB connections -->

<!-- driverClassName: Class name for the old mm.mysql JDBC driver is
org.gjt.mm.mysql.Driver - we recommend using Connector/J though.
Class name for the official MySQL Connector/J driver is com.mysql.jdbc.Driver.
-->

<!-- url: The JDBC connection url for connecting to your MySQL dB.
The autoReconnect=true argument to the url makes sure that the
mm.mysql JDBC Driver will automatically reconnect if mysqld closed the
connection. mysqld by default closes idle connections after 8 hours.
-->

<Resource name="jdbc/test" auth="Container" type="javax.sql.DataSource"
maxActive="20" maxIdle="10" maxWait="50"
username="root" password="root" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/softrc"/>

</GlobalNamingResources>
  

  三 配置tomcat中的context.xml
  在context.xml中的<Context>里面配置下面的信息
  

  context.xml:
  
<Context>
<ResourceLink global="jdbc/test" name="jdbc/test" type="javax.sql.DataSource" />
</Context>
  

  四 写个类测试下
  package com.shaoguan.test;

import java.sql.Connection;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;

public class DBCPConn {
public static Connection getConn() throws Exception{
Context ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/test");
return ds.getConnection();
}
}
  

  五 在jsp中显示写数据来看看数据

  这里我测试的jsp名称为:testdbcp.jsp
  

  testdbcp.jsp:

  

  <%
Connection conn = DBCPConn.getConn();
String sql = "select * from user";
PreparedStatement pstmt = DBUtil.prepareStatement(conn, sql );
ResultSet rs = pstmt.executeQuery();

while(rs.next()){
System.out.println(rs.getInt(1));
}




%>库是不是真的连接通了
  
页: [1]
查看完整版本: Tomcat中的配置DBCP