up:: SQL注入攻击的解决策略
本篇博客还是沿用JDBC分析按部门查询员工功能这篇博客中的接口:
本篇博客篇幅很长,但核心内容就3点:
(1)DbUtils;
(2)【新增、更新、删除数据】的方法;
(3)整体的包结构和类组织的套路;
一.封装DbUtils工具类:
【创建数据库连接】和【关闭数据库连接】的代码,需要经常用到。可以把这些需要重复使用的代码做成一个工具类,就是DbUtils工具类;
DbUtils类: 这个类没什么好说的,看下代码中的注释。
二:新增、更新、删除实现
包结构:
1.新增(写操作):InsertCommand类
(1)新增操作需要使用PreparedStatement(因为 PreparedStatement可以进行参数化设置啊);
(2)新增使用PreparedStatement对象的executeUpdate()方法;
(3)executeUpdate()方法返回值:本次写操作所影响的数据库的行数;
(4)和查询不同,新增操作没有返回结果集;而是返回了一个(3)中的影响数据库的行数;
InsertCommand类:
2.更新:UpdateCommand类
(1)更新也是使用PreparedStatement对象的executeUpdate()方法;
(2)executeUpdate()方法的返回值也是本次更新操作所影响的数据库的行数;
UpdateCommand类:
3.删除:DeleteCommand类
(1)删除也是使用PreparedStatement对象的executeUpdate()方法;
(2)executeUpdate()方法的返回值也是本次删除操作所影响的数据库的行数;可能返回1,也可能返回0(表示本次删除操作没有删除任何一条数据);
DeleteCommand类:
4.Command接口内容
5.入口类:HumanResourceApplication类