JDBC事物管理、JDBC控制事务
JDBC事物管理
1, PrepardeStatement:执行sql的对象
sql注入问题:在拼接sql时,有一些特殊的关键字参与字符的拼接,会造成安全问题
1.输入用户随便,输入密码:a' or 'a' = 'a
2. sql : select * from user where username = 'fhdsjkf' and password = 'a' or 'a' = 'a'
2.解决sql注入问题:使用Preparedstatement对象来解决
3.预编译的sQL:参数使用?作为占位符
4.步骤︰
1.导入驱动jar包mysql-connector-java-5.1.37-bin.jar2.注册驱动
3。获取数据库连接对象Connection4.定义sql
*注意: sql的参数使用?作为占位符。如: select *from user where username = ? and password = ?,
5.获取执行sql语句的对象statement PrepardeStatement
6.执行sql,接受返回结果
7.处理结果
8.释放资源
注意:后期都会使用PrepardeStatement来完成增删改查的所有操作
1,可以防止sql注入
2,效率更高
JDBC控制事务
1,事务:一个包含多个步骤的业务操作,如果这个业务操作被事物管理,则这么多个步骤要么同时成功,要么同时失败
2,操作:
开启事物
提交事务
回滚事物