为什么要使用PreparedStatement?
PreparedStatement 是一个特殊的Statement对象,如果我们只是来查询或者更新数据的话,最好用PreparedStatement代替Statement,因为它有以下有点:
1. 简化Statement中的操作
2. 提高执行语句的性能
3. 可读性和可维护性更好
4. 安全性更好。
5. 使用PreparedStatement能够预防SQL注入攻击,所谓SQL注入,指的是通过把SQL命令插入到Web表单提交或者输入域名或者页面请求的查询字符串,最终达到欺骗服务器,达到执行恶意SQL命令的目的。注入只对SQL语句的编译过程有破坏作用,而执行阶段只是把输入串作为数据处理,不再需要对SQL语句进行解析,因此也就避免了类似select * from user where name='aa' and password='bb' or 1=1的sql注入问题的发生。
Statement 和 PreparedStatement之间的关系和区别.
· 关系:PreparedStatement继承自Statement,都是接口
· 区别:PreparedStatement可以使用占位符,是预编译的,批处理比Statement效率高
一般我回答上面就可以了,但是你想回答更完美点,那么你可以在衍生点这个方向的回答,我们在这里就不展开说下面的点了:
通过 MyCAT 对 PreparedStatement 的实现对大家能够重新理解下。
1. JDBC Client 如何实现 PreparedStatement。
2. MyCAT Server 如何处理 PreparedStatement。
更多关于“java培训”的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。