jdbc工具类及sql插入
一、jdbc工具类
由于操作中的加载驱动与建立连接与释放资源属于固定的代码块,所以为了效率,常采用工具类对其进行封装调用。
步骤:
1、创建工具类jdbcutils
2、将加载驱动与建立连接写入方法getConnection();
4、分别写出连接、语句执行者、结果集 三个对象的释放方法
5、在释放资源方法中调用连接、语句执行者、结果集 三个对象的释放方法
6、使用工具类
二、代码展示
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
//工具类
public class jdbcutils {
// 获取连接
public static Connection getConnection() throws ClassNotFoundException, SQLException {
// 注册驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立连接 ctrl+shift+o导包
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/students", "root", "");
return conn;
}
/**
* 释放资源
* @param conn 连接
* @param st 语句执行者
* @param rs 结果集
*/
public static void closeResource(Connection conn, Statement st, ResultSet rs) {
closeResultSet(rs);
closeStatement(st);
closeConn(conn);
}
/**
* 释放连接
*
* @param conn 连接
*/
public static void closeConn(Connection conn) {
if (conn != null) {
try {
conn.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
conn = null; // 对象等于空,垃圾回收机制就会处理掉
}
}
/**
* 释放语句执行者
*
* @param st 语句执行者
*/
public static void closeStatement(Statement st) {
if (st != null) {
try {
st.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
st = null; // 对象等于空,垃圾回收机制就会处理掉
}
}
/**
* 释放结果集
*
* @param rs 结果集
*/
public static void closeResultSet(ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
rs = null; // 对象等于空,垃圾回收机制就会处理掉
}
}
}
三、工具类的使用及sql插入
@Test
public void f3() {
Connection conn = null;
PreparedStatement st = null;
ResultSet rs = null;
//获取连接
try {
conn = jdbcutils.getConnection();
//编写sql
String sql="insert into sinfor values (?,?)";
//创建语句执行者
st=conn.prepareStatement(sql);
//设置参数
st.setString(1,"5");
st.setString(2,"wulepeng");
//执行sql i为影响的行数
int i=st.executeUpdate();
//处理结果
if(i==1) {
System.out.println("success");
}
else {
System.out.println("fail");
}
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}finally {
//释放资源
jdbcutils.closeResource(conn, st, rs);
}
}
四、文档注释的作用
当鼠标放在对应方法上时
五、结果展示
备注:由于个人原因,本博客暂停更新。如有问题可联系本人,本人提供技术指导、学习方向、学习路线。本人微信wlp1156107728(添加注明来意) QQ1156107728(添加注明来意)