文章目录
数据源(DataSource)
jdbc的不足?
jdbc是java 和数据库的桥梁(交互)
JDBC的步骤:
-
注册驱动 Class.forName()——只需要一次
-
建立连接 Connection ——每一次都需要建立连接
-
预处理对象PreparedStatement
-
执行SQL
-
关闭连接 ——每一次都需要关闭
每一次都需要:建立连接(消耗资源)——关闭连接(释放资源)
Statement对象和PreparedStatement对象的关系?
(1)是继承关系,PreparedStatement 继承于 Statement。
public interface PreparedStatement extends Statement`
(2)PreparedStatement相比Statement可以防止SQL注入漏洞,信息更安全 .
Statement : 采用的sql拼接的方式,会出现sql注入漏洞,造成信息泄露。
String s = "猫";
String k = "波斯猫' OR 1='1";
"Select * from pet_tab WHERE pet_category='" +s+"' AND pet_kind=“ '+k+"'"
SELECT * FROM pet_tab WHERE pet_category='猫' AND pet_kind ='xxx'