Statement和PreparedStatement最大的区别就体现在效率跟安全(sql注入)
Statement:每次都会执行SQL语句,相关数据库都要执行SQL语句的编译。而statement每执行一个sql语句就会产生一个执行计划
PreparedStatement:用于处理动态SQL语句,在执行前会有一个预编译过程,这个过程是有时间开销的,虽然相对数据库的操作,该时间开销可以忽略不计,但是PreparedStatement的预编译结果会被缓存,下次执行相同的预编译语句时,就不需要编译,只要将参数直接传入编译过的语句执行代码 中就会得到执行,所以,对于批量处理可以大大提高效率。
PreparedStatement使用占位符来构造sql语句有效的避免一些注入。
注:学习笔记,不喜勿喷。