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,操作:
开启事物
提交事务
回滚事物
标签:事务,JDBC,步骤,事物,sql,password 来源: https://www.cnblogs.com/ssr1/p/16545780.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。