在jdbc中有四大对象,分别是 数据库连接对象Connection,SQL执行对象 Statement 和 PreparedStatement,结果集对象ResultSet。
关于 Statement 和 PreparedStatement,这两者的区别如下:
Statement :
① 执行静态SQL语句,执行每一条语句之前都要发送给数据库进行编译,当数据量非常大的时候,效率就很低,造成性能问题;
② 而且SQL语句中有参数的时候,需要进行字符串拼接,有SQL注入风险。
PreparedStatement:
① 执行动态SQL语句,可以把SQL语句一起发送给数据库进行预编译,今后再次执行的时候不需要二次编译,提高了执行效率;
② 执行有参的SQL语句可以使用占位符,有效避免SQL注入,安全性高,并且代码的可读性也提高了