预编译Statement的三大优势!

使用PreparedStatement

PreparedStatement接口继承Statement

PreparedStatement Statement
相同点 执行sql语句 执行sql语句
不同点 sql语句预编译+传参 sql语句字符串拼接

注: 这是JAVA里唯二的基1的地方,另一个是查询语句中的ResultSet也是基1的。

PreparedStatement三大优势

参数设置

Statement 需要进行字符串拼接,可读性和维护性比较差

String sql = "insert into hero values(null,"+"'提莫'"+","+313.0f+","+50+")";

PreparedStatement 使用参数设置,可读性好,不易犯错

String sql = "insert into hero values(null,?,?,?)";

性能表现

执行10,000插入任务耗费时间(差不多)

Statement PreparedStatement
时间 226204ms 229636ms
空间 产生字符串多

防止sql注入式攻击

猜你喜欢

转载自www.cnblogs.com/sweetorangezzz/p/12894239.html