先配置web.xml和context.xml文件 tomcat6.
package com.dywz.track.utils;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
public class DBConnectionPool {
private static DataSource pool;
private static Connection conn;
static{
Context env = null;
try{
env = (Context)new InitialContext();
pool = (DataSource)env.lookup("java:comp/env/jdbc/mysql");
}catch(NamingException e){
if(pool == null)
System.out.println("数据库连接为空!");
//e.printStackTrace();
}
}
/*
* 取池连接
*/
public static Connection getPoolConnection(){
if(pool != null){
try{
conn = pool.getConnection();
conn.setAutoCommit(false);
}catch(Exception e){
e.printStackTrace();
System.out.println("不能返回连接 !");
}
}
return conn;
}
/*
* 直连
*/
public static Connection getConnection(){
Connection con = null;
try{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://127.0.0.1/track","root","123");
con.setAutoCommit(false);
}catch(Exception e){
e.printStackTrace();
}
return con;
}
public static void close(PreparedStatement pstmt) {
try {
if (pstmt != null) {
pstmt.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void close(Connection conn) {
try {
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void close(ResultSet rs) {
try {
if (rs != null) {
rs.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void rollback(Connection conn) {
try {
conn.rollback();
} catch (SQLException e1) {
e1.printStackTrace();
}
}
public static void commit(Connection conn){
if(conn!=null){
try {
conn.commit();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}