JDBC-语句,PreparedStatement,CallableStatement和缓存
问题内容:
我想知道有什么区别,何时使用Statement
,PreparedStatement
和CallableStatement
。
每种方法的最佳实践和典型方案是什么?
问题答案:
声明与PreparedStatement
-
使用PreparedStatement可以提高性能,但它取决于数据库。
-
使用PreparedStatement可以避免SQL注入。PreparedStatement如何避免或阻止SQL注入?
-
使用setInt,setString和prepareStatement更好地进行类型检查,其中,您只需保持附加到主SQL的语句即可。
类似帖子:
声明和PreparedStatement之间的区别
CallableStatement-Java答案,用于跨所有数据库访问StoredProcedures。
类似帖子
有了PreparedStatement和Callable,您已经有了缓存,缓存本身也是一个大话题,您不想做所有这些,而是看ehcache
您几乎总是应该首选PreparedStatement而不是Statement
如果必须对StoredProcedure进行操作,则只有一个选项CallableStatement。