天天看點

Java學習-JDBC

JDBC

應用程式通過驅動連接配接到資料庫,進而操作資料庫。

簡化開發人員對資料庫的操作,提供了一個java操作資料庫的規範,俗稱JDBC

對于程式猿,隻需要學習JDBC提供的接口。

java.sql

javax.sql

導入資料庫驅動的包: mysql-connector-java-8.0.23.jar

加載驅動

連接配接資料庫 DriverManager

獲得執行sql的對象 Statement

獲得傳回的結果集

釋放連接配接

URL
DriverManager
Statement   PrepareStatement 執行SQL的對象
ResultSet 查詢的結果集:封裝了所有的查詢結果

周遊

釋放資源

執行SQL的對象 Statement

Statement statement = connection.createStatement();

CRUD操作-create

使用executeUpdate(String sql)方法完成資料添加操作:

CRUD操作-update

使用executeUpdate(String sql)方法完成資料更新操作:

CRUD操作-delete

使用executeUpdate(String sql)方法完成資料删除操作:

CRUD操作-read

使用executeQuery(String sql)方法完成資料查詢操作:

建立utils工具類

調用 utils工具類

PreparedStatement 使用?占位符

防止SQL注入的本質,傳遞進來的參數當做字元

ACID原則

原子性:要哦全部完成,要麼都不完成

一緻性:總數不變

隔離性:多個程序互不幹擾。存在以下問題

髒讀:一個事務讀取了另一個沒有送出的事務

不可重複讀:在同一個事務内,重複讀取表中的資料,表資料發生了改變

虛讀:在一個事務内,讀取到了别人插入的資料,導緻前後讀出來的結果不一緻

持久性:一旦送出不可逆,持久化到資料庫

資料庫執行步驟:資料庫連接配接 --- 執行完畢 --- 釋放

池化技術:準備一些預先的資源,過來就連接配接準備好的

連接配接池常用的參數

最小連接配接數:10

最大連接配接數: 100  業務最高承載上限

等待逾時:100ms

編寫連接配接池,需要實作一個接口 DateSource

開源資料源實作

DBCP

C3P0

Druid

使用這些連接配接池之後,可以節省連接配接資料庫的代碼Connection connection = JdbcUtils.getConnection();

需要用到的jar包:commons-dbcp-1.4.jar、commons-pool-1.6.jar

配置檔案

工具類

需要用到的jar包:mchange-commons-java-0.2.20.jar、c3p0-0.9.5.5.jar

配置檔案 c3p0-config.xml