ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

JDBC工具类

2022-08-02 16:03:05  阅读:175  来源: 互联网

标签:JDBC try printStackTrace SQLException static catch close 工具


JDBC工具类

目的:简化代码书写

  分析:

    1,注册驱动也抽取

    2,抽取一个方法获取连接对象

    3,抽取一个方法释放资源

 

​ 在我们使用JDBC 的时候,我们多数的代码都是一样的,这个时候我们就像能不能把相同的代码包装成静态方法给我们使用,这就是我们所谓的JDBC工具类

 

  

   public class JDBCUtils {

private static String url ;
private static String user ;
private static String password ;
private static String driver;

static {
Properties pro = new Properties();
//这里是通过类加载器获取jdbc.propertise的绝对路径
//首先获取类的加载器,然后通过类的加载器获取src路径下资源的绝对路径
//这里的意思是不管模块如何移植,只要在模块当中,就能通过相对路径找到
//绝对路径
ClassLoader loader = JDBCUtils.class.getClassLoader();
//通过类加载器获取scr路径下的资源的绝对路径
URL res = loader.getResource("JDBC.properties");
//获取绝对路径
String path = res.getPath();

try {
pro.load(new FileReader(path));
} catch (IOException e) {
e.printStackTrace();
}
url = pro.getProperty("url");
user = pro.getProperty("user");
password = pro.getProperty("password");
driver = pro.getProperty("driver");
try {
Class.forName(driver);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}

public static Connection getConnection() throws SQLException {
return DriverManager.getConnection(url,user,password);
}

public static void close(Statement stmt, Connection conn){
if (stmt!=null){
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}

if (conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}

public static void close(ResultSet rs,Statement stmt, Connection conn){

if (rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}

if (stmt!=null){
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}

if (conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}

}

    

标签:JDBC,try,printStackTrace,SQLException,static,catch,close,工具
来源: https://www.cnblogs.com/ssr1/p/16544037.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有