SQL注入
所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。
具体来说,它是利用现有应用程序,将(恶意的)SQL命令注入到后台数据 库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。
先模拟应用场景
导入示例数据
DROP TABLE IF EXISTS t_user
;
CREATE TABLE t_user
(
id
int(11) NOT NULL AUTO_INCREMENT,
username
varchar(255) NOT NULL,
password
varchar(255) NOT NULL,
PRIMARY KEY (id
)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
INSERT INTO t_user
VALUES (‘1’, ‘admin’, ‘admin’);
INSERT INTO t_user
VALUES (‘2’, ‘root’, ‘root’);
INSERT INTO t_user
VALUES (‘3’, ‘zrz’, ‘123’);
创建User实体类
创建IUserDao接口
提供一个登录和更新密码的功能
使用Statement技术实现IUserDao接口
public class UserDao_Statement implements IUserDao {
@Override
public void login(User user) {
Connection connection =