经过上面的学习,会发现增删改查都有很多共同点,不同之处只是SQL语句和接收返回值的方式不同,那么为了使程序的复用性更好,我们通常把相同的代码提取出来。下面的代码演示一个通过提取出来的工具类进行新增操作。
DBUtil工具类import java.sql.Connection;
import java.sql.DriverManager;
public class DBUtil {
private static String url = "jdbc:mysql://localhost:3306/easilyj"; // 数据库地址
private static String userName = "root"; // 数据库用户名
private static String passWord = "123456"; // 数据库密码
private static Connection conn = null;
public static Connection getConnection() {
if (null == conn) {
try {
// 加载驱动
Class.forName("com.mysql.jdbc.Driver");
// 创建数据库连接
conn = DriverManager.getConnection(url, userName, passWord);
} catch (Exception e) {
e.printStackTrace();
}
}
return conn;
}
public static void main(String[] args) {
// 测试数据库是否连通
System.out.println(getConnection());
}
}
新增数据改为以下代码:import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class InsertDate {
public static void main(String[] args) {
// 准备sql
String sql = "INSERT INTO user(user_name, user_password) VALUES ('小海绵', '123456')";
Connection conn = DBUtil.getConnection();
PreparedStatement pst = null;
try {
// 创建预编译语句
pst = conn.prepareStatement(sql);
// 执行SQL
pst.executeUpdate();
System.out.println("JDBC 插入成功");
// 关闭资源
pst.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
System.out.println("JDBC 插入失败");
}
}
}
同样的,可以将增删改查都改成这种方式,使代码更加的简洁,更具有逻辑性和复用性。