package com.side.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import sun.security.jca.GetInstance.Instance;
public class JdbcUtil {
private JdbcUtil() {
}
private static JdbcUtil jdbc=null;
// 加载驱动
static {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
//单例模式的主要代码
public static JdbcUtil getInstance(){
if(jdbc==null){
//枷锁
synchronized (JdbcUtil.class) {
if(jdbc==null){
jdbc=new JdbcUtil();
}
}
}
return jdbc;
}
// 得到连接
public Connection getconn() {
Connection conn = null;
try {
conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk", "root", "1240539157");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
// 得到preparedstatement
public PreparedStatement getstmt(Connection conn, String sql) {
PreparedStatement stmt = null;
try {
stmt = conn.prepareStatement(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return stmt;
}
// 关闭数据库连接
public void closed(Connection conn, PreparedStatement stmt,
ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
rs = null;
}
}
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
stmt = null;
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
conn = null;
}
}
}
}
用单例模式实现JDBC数据库连接
最新推荐文章于 2021-02-25 03:41:19 发布