1.封装JDBCUtils
一.前言
二.实例
提供一个通用的工具类完成对数据库连接和关闭的操作
更利于程序的管理
工具测试类
package com.hspedu.jdbc.utils;
import java.io.FileInputStream;
import java.io.IOException;
import java.sql.*;
import java.util.Properties;
/**
* 这是一个工具类 完成mysql的连接和关闭资源
*/
@SuppressWarnings({
"all"})
public class JDBCutils {
//定义相关的属性(4个) 因为只需要一份 因此 我们做出static
private static String user;
private static String password;
private static String url;
private static String driver;
//在static 代码块去初始化
static {
Properties properties = new Properties();
try {
properties.load(new FileInputStream("src/main/java/com/hspedu/mysql.properties"));
//读取相关的属性值
user=properties.getProperty("user");
driver=properties.getProperty("password");
url=properties.getProperty("url");
driver=properties.getProperty("driver");
} catch (IOException e) {
//在实际开发中 我们可以这样处理
//1.将编译异常转换 运行异常
//2.这时调用者 可以选择捕获该异常,也可以选择默认处理该异常 比较方便
throw new RuntimeException(e);
}
}
//连接数据库,返回Connection
public static Connection getConnection(){
try {
return DriverManager.getConnection(url,user,password);
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
//关闭资源
/* 1.ResultSet结果集
2.Statement或 PreparedStatement
3.connenction
4.如果需要关闭资源 就传入对象 否则传入null
*/
public static void close(ResultSet resultSet, Statement statement,Connection connection){
//判断是否为null
try {
if (resultSet!=null){
resultSet.close();
}
if (statement!=null){
statement.close();
}
if (connection!=null){
connection.close();
}
} catch (SQLException e) {
//将编译异常转成运行时异常抛出
throw new RuntimeException(e);
}
}
}
测试类
package com.hspedu.jdbc.utils;
import org.junit.Test;
import java.sql.*;
/**
* 该类演示如何使用JDBCUtils工具类完成dml和select使用
*/
public class JDBCUtils_Use {
public static void main(String[] args) {
}
@Test
public void testDML(){
//insert update delete