PrepareStatment
与
Statement
比较
JAVA
的
JDBC
有多种方法可以对数据库进行查询,但
使用比较多的还是
conn.prepareStatement()
和
conn.createStatement()
两种方式打开数据库游标进行查询,
具体方法就不多说了,主要说说两种方式的区别。个人感觉
在开发中还是应尽量使用
prepareStatement
方式进行数据
库查询,原因有以下几点
: 1
:安全性
prepareStatement
绑
定参数方式
比
createStatement
直接写
sql
更加安全,
因为
前者可以防止
sql
注入攻击。
以下脚本显示了一个简单的
SQL
注入。此脚本通过串联硬编码字符串和用户输入的字
符串而生成一个
SQL
查询:
Java
代码
var sql = "select * from OrdersTable where ShipCity = '" +
ShipCity + "'";
//
其中
ShipCity
是用户在表单里输入的值
用户将被提示输入一个市县名称。
如果用户输入
Redmond
,
则查询将由与下面内容相似的脚本组成: