PrepareStatement:执行sql的对象
1.SQL注入问题:在拼接sql时,有一些sql的特殊关键词参与字符串的拼接,灰枣成安全性问题
1.使用密码:'a' or 'a'='a'
2.sql: select * from user where username ="asdf" and password='a' or 'a'='a'
2.解决sql注入问题:使用PreparedStatement对象来结局
3.预编译的SQL:参数使用?作为占位符
4.步骤:
1.导入驱动
2.注册驱动
3.获取数据库连接对象Connection
4.定义sql
* 注意:sql的参数使用?作为占位符。eg:
select * from user where username=? and password=?;
5.获取执行sql语句的对象PreparedStatement
Connection.prepareStatement(String sql)
6.给?赋值:
* 方法:setXxx(参数1,参数2)
* 参数1:?的位置编号从1开始
* 参数2:?的值