封装数据库连接和关闭的方法
因为我们不管在使用JDBC进行增,删,改,查操作的时候我们都是要进行统一的两个步骤:
- 获取数据库连接
- 关闭相应的资源
所以我们干脆就将这两个步骤封装成为两个方法,将这两个方法封装在一个自定义工具类中,如果我们需要执行这两个步骤的操作的时候我们就只需要通过这个自定义工具类来调用这两个方法即可
- 注意: 我们最好是将这两个方法修饰为静态方法,这样我们就可以通过自定义类的类名直接进行调用—> 在java核心类库中很多工具类中都是将所有方法都声明为静态方法
具体代码如下:
package com.ffyc.util;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Properties;
/**
* 操作数据库的工具类
*/
public class JDBCUtils {
/**
*
* @return
* @throws IOException
* @throws ClassNotFoundException
* @throws SQLException
*/
public static Connection getConnection() throws IOException, ClassNotFoundException, SQLException {
//1.读取配置文件中的四个基本信息
InputStream is = ClassLoader.getSystemResourceAsStream("jdbc.properties");
//1.1创建Properties类的对象,以便后面将配置文件中的信息导入到java程序中
Properties properties = new Properties();
//1.2 使用properties对象调用load()方法将配置文件中的信息封装到properties对象中
properties.load(is);
String driverClass = properties.getProperty("driverClass");
String url = properties.getProperty("url");
String user = properties.getProperty("user");
String password = properties.getProperty("password");
//2. 加载驱动
Class.forName(driverClass);
//3. 获取连接
Connection conn = DriverManager.getConnection(url,user,password);
//4.返回获取到的数据库连接
return conn;
}
/**
* 关闭数据库连接和Statement资源的方法
* @param conn
* @param ps
*/
public static void closeResource(Connection conn, PreparedStatement ps){
try{
if(conn != null){
conn.close();
}
}catch(SQLException e){
e.printStackTrace();
}
try{
if(ps != null){
ps.close();
}
}catch(SQLException e){
e.printStackTrace();
}
}
}