mysql,tomcat环境下jdbc连接池配置

本文将指导您如何在Tomcat服务器上配置MySQL的JDBC连接池。首先,需要创建数据库shixun,然后对Tomcat的conf目录下的server.xml文件进行配置。
摘要由CSDN通过智能技术生成

首先先对tomcat中的一些配置文件进行修改

1、创建数据库shixun

2、配置server.xml文件。Tomcat安装目录下conf中server.xml文件。

<GlobalNamingResources>
    <Resource
       name="jdbc/DBPool"
       type="javax.sql.DataSource"
        password="root"
        driverClassName="com.mysql.jdbc.Driver"
        maxIdle="29"
        maxWait="5000"
        username="root"
        url="jdbc:mysql://localhost:3306/shixun"
        maxActive="30"
    />
</GlobalNamingResources>




name:指定连接池的名称


type:指定连接池的类,他负责连接池的事务处理


url:指定要连接的数据库


driverClassName:指定连接数据库使用的驱动程序


username:数据库用户名


password:数据库密码


maxWait:指定最大建立连接等待时间,如果超过此时间将接到异常


maxIdle:指定连接池中连接的最大空闲数


maxActive:指定连接池最大连接数


3、配置web.xml文件。


<web-app>
  <resource-ref>
     <res-ref-name>jdbc/DBPool</res-ref-name>
     <res-type>javax.sql.DataSource</res-type>
     <res-auth>Container</res-auth>
     <res-sharing-scope>Shareable</res-sharing-scope>
  </resource-ref>
</web-app>




4、配置context.xml文件


与server.xml文件所在的位置相同。
<Context>
    <ResourceLink
       name="jdbc/DBPool"
       type="javax.sql.DataSource"
       global="jdbc/DBPool"
    />
</Context>




5、测试的java代码

package com.lin.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

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

public class JdbcPoolUtil {
	private static JdbcPoolUtil instance = new JdbcPoolUtil();
	private static final String DSNAME="java:comp/env/jdbc/DBPool";

	private JdbcPoolUtil() {

	}

	public static JdbcPoolUtil getInstance() {
		return instance;
	}
	public Connection getConnection() {
		Connection conn = null;
		try {
			Context ctx=new InitialContext();
			DataSource ds=(DataSource)ctx.lookup(DSNAME);
			conn = ds.getConnection();
		} catch (SQLException e) {
			System.out.println("数据库连接失败!");
			e.printStackTrace();
		} catch (NamingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return conn;
	}

	// 关闭数据库连接的资源
	public static void free(Connection conn, Statement stmt, ResultSet rs) {
		try {
			if (rs != null) {
				rs.close();
			}
			if (stmt != null) {
				stmt.close();
			}
			if (conn != null) {
				conn.close();
			}
		} catch (SQLException e) {
			try {
				if (stmt != null) {
					stmt.close();
				}
			} catch (SQLException e1) {
				try {
					if (conn != null) {
						conn.close();
					}
				} catch (SQLException e2) {
					// TODO Auto-generated catch block
					e2.printStackTrace();
				}
				e1.printStackTrace();
			}
			e.printStackTrace();
		}

	}

}

//获取connection的java代码为Connection conn = JdbcPoolUtil.getInstance().getConn();





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值