preparedStatement和Statement有什么不同呢?

杨幂 Java面经 发布时间:2022-05-24 21:52:26 阅读数:6947 1
下文笔者讲述preparedStatement和Statement的区别说明,如下所示

区别1:效率
   预编译会话比普通会话对象
   数据库系统不会对相同的sql语句不会再次编译

区别2:安全性
   可以有效的避免sql注入攻击
   sql注入攻击就是从客户端输入一些非法的特殊字符
   而使服务器端在构造sql语句的时候仍然能够正确构造
   从而收集程序和服务器的信息和数据

 如:“select * from user where userName = ‘” + userName + “ ’ and password =’” + password + “’”
    如果用户名和密码输入的是’1’ or ‘1’=’1’
    则生产的sql语句是
      “select * from user where userName = ‘1’ or ‘1’ =’1’  and password =’1’  or ‘1’=’1’  
	 这个语句中的where 部分没有起到对数据筛选的作用。
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaMianJing/202205/16534006123487.html

最近发表

热门文章

好文推荐

Java265.com

http://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者