jdbc Statement与PreparedStatement
程序员文章站
2022-06-19 07:53:58
...
作用:两者都是创建对象然后通过对象调用 executeQuery() 方法执行 sql 语句
注意:
PreparedStatement效率更高
主要用于解决使用Statement对象多次执行同一SQL语句的效率问题
在数据库支持预编译的情况下预先将SQL语句编译,
当多次执行这条SQL语句时,可以直接执行编译好的SQL语句
PreparedStatement更加安全
PreparedStatement将sql变量抽离出sql语句,执行更加安全
案例:
select * from user where username = 'user' and userpwd = '' or '1' = '1';
select * from user where username= '"+varname+"' and userpwd='"+varpasswd+"'";
相关面试题
1. 关于PreparedStatement与Statement描述错误的是()
A. 一般而言,PreparedStatement比Statement执行效率更高
B. PreparedStatement会预编译SQL语句
C. Statement每次都会解析/编译SQL,确立并优化数据获取路径
D. Statement执行扫描的结果集比PreparedStatement大
解析我觉得答案是 D 我没有找到答案啊
SQL 语句从数据库查询中获取数据,并将数据返回到结果集,同一SQL语句结果集应该是一样的。我觉得哈
推荐阅读
-
Linux系统下安装jdbc与tomcat的图文教程
-
Sharding-Jdbc概念与使用技巧
-
oracle学习笔记(七) 预编译Statement介绍与使用
-
荐 Java——数据库编程JDBC之数据库连接池技术(C3P0与Druid,提供了Druid的工具类)
-
JavaWeb笔记13-JDBC原理及使用Statement访问数据库
-
关于JDBC与MySQL临时表空间的深入解析
-
jdbc用户登录与注册案例(包含数据库注入漏洞及解决方法)
-
JDBC复习:Statement-PrepareStatement-事务
-
JDBC编程:使用 Statement 修改数据库
-
JDBC中的Statement和PreparedStatement的区别