jdbc连接用工具类
Posted sonerwx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jdbc连接用工具类相关的知识,希望对你有一定的参考价值。
封装的是链接部分和关流部分
mysql8.0.13
public class JDBCUtils {
private JDBCUtils(){}
private static Connection con;
static{
try {
Class.forName("com.mysql.jdbc.Driver");
//2获得连接 对象
String url ="jdbc:mysql://localhost:3306/rwx?useSSl=false&serverTimezone=UTC&allowPublicKeyRetrieval=true";
String username="root";
String password="root";
con = DriverManager.getConnection(url, username, password);
} catch (Exception e) {
throw new RuntimeException("数据库连接失败");
}
}
//定义静态方法 返回数据库的连接
public static Connection getConnection(){
return con;
}
//关资源
public static void close(Connection con, Statement stat){
if(stat!=null){
try {
stat.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(con!=null){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
public static void close(Connection con, Statement stat,ResultSet rs){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
if(stat!=null){
try {
stat.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(con!=null){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
}
由于使用了静态代码块,当类调用时直接执行,然后得到的con通过getConnection方法返回其他调用
调用封装的工具类
public class TestJDBCUtils {
public static void main(String[] args) throws SQLException {
Connection con = JDBCUtils.getConnection();
PreparedStatement pst = con.prepareStatement("select * from zhichu");
ResultSet rs = pst.executeQuery();
while(rs.next()){
System.out.println(rs.getString("zname"));
}
JDBCUtils.close(con, pst,rs);
}
}
调用后剩下的执行静态sql语句,并返回生成的结果的对象
以上是关于jdbc连接用工具类的主要内容,如果未能解决你的问题,请参考以下文章