PreparedStatement与Statement的区别及优势

来源:互联网 发布:wap淘宝是什么访客 编辑:程序博客网 时间:2024/05/21 18:32
PreparedStatement是用来执行SQL查询语句的API之一,Java提供了 Statement、PreparedStatement 和 CallableStatement三种方式来执行查询语句,其中 Statement 用于通用查询, PreparedStatement 用于执行参数化查询。

为什么我们平常项目或者工作中,大多数都使用PreparedStatement,而不是Statement,下面说一下他的优点。
  1. PreparedStatement 可以加动态参数,只需要再sql语句使用?进行占位即可。
  2. PreparedStatement比 Statement 更快,因为前者的性能更加好,SQL语句会预编译在数据库系统中。执行计划同样会被缓存起来,它允许数据库做参数化查询。使用预处理语句比普通的查询更快,因为它做的工作更少(数据库对SQL语句的分析,编译,优化已经在第一次查询前完成了)
  3. 可以阻止一般的sql注入