操作步骤:
1.获取数据库连接
2.预编译SQL语句,返回PreparedStatement的实例
3.填充占位符,用for循环控制可变形参的传参
4.执行
5.资源关闭
/*
通用的增删改操作:封装成一个方法,想要操作时,调用该方法
什么不一样就传什么参数:
1.增删改的SQL语句不一样所以,要传一个SQL语句参数
2.占位符的个数不知道,用Object类型的可变形参
*/
public void update(String sql, Object... args) {
Connection conn = null;
PreparedStatement ps = null;
try {
//1.获取数据库的连接
conn = JDBCUtils.getConnection();
//2.预编译sql语句,返回PreparedStatement的实例
ps = conn.prepareStatement(sql);
//3.填充占位符,用for循环控制可变形参的传参
for (int i = 0; i < args.length; i++) {
//小心参数声明错误;数组操作,下标从0开始
ps.setObject(i+1,args[i]);
}
//4.执行
ps.execute();
} catch (Exception e) {
e.printStackTrace();
}finally {
//5.资源关闭
JDBCUtils.closeResource(conn,ps);
}
}
删除操作
@Test
//删除操作
public void testCommonUpdate(){
String sql = "delete from customers where id=?";
update(sql,3);
}
修改操作
//修改操作
@Test//将order表中的“BB”改成了“D”
public void testCommonUpdate_2(){
//此处的order是一个关键字,要点起来
String sql = "update `order` set order_name=? where order_id=?";
update(sql,"DD","2");
}