JDBC工具类
package com.dyh.util;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;
public class JdbcUtil {
private static final ThreadLocal<Connection> tol = new ThreadLocal<Connection>();
//读取配置文件
private static Properties prop = new Properties();
static{
//获取输入流
InputStream is=null;
try {
is = JdbcUtil.class.getResourceAsStream(“/jdbc.properties”);
//加载配置文件
prop.load(is);
} catch (IOException e) {
e.printStackTrace();
}finally{
if (is!=null) {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
// 获取链接
public static Connection getConn() throws RuntimeException {
Connection conn = tol.get();
try {
//获取配置文件中的内容
String driver = prop.getProperty(“driver”);
String url = prop.getProperty(“url”);
String userName = prop.getProperty(“userName”);
String password = prop.getProperty(“password”);
// 加载驱动
Class.forName(driver);
// 创建链接
conn = DriverManager.getConnection(url,userName,password);
tol.set(conn);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e);
}
return conn;
}
// 释放资源
public static void release(ResultSet rs, PreparedStatement pst,Connection conn) {
if (rs != null)
try {
rs.close();
} catch (SQLException e1) {
e1.printStackTrace();
}
if (pst != null)
try {
pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
if (conn != null)
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
//方法重载
public static void release(PreparedStatement pst,Connection conn){
if (pst!=null) {
try {
pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn!=null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void release(Connection conn){
if (conn!=null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}