1、JDBC sql
什麼是JDBC? |
JDBC訪問數據庫的步驟? |
兩種經常使用的驅動方式: |
一、在不須要ResultSet對象,Statement對象,Connection對象的時候,顯示地關閉它們 |
(三)經常使用的5個對象 spa
Connection,DriverManager(略,見用例) 3d
一、Statement經常使用方法 對象
二、ResultSet經常使用方法 blog
三、PreparedStatement的介紹 繼承
a : PreparedStatement接口繼承自Statement接口:(優勢):
1.提升了代碼的可讀和可維護性
2.提升了SQL語句的執行性能
3.提升了安全性( or '1'='1' 注入拼接攻擊)
b : PreparedStatement接口的使用
使用PreparedStatement的execute(String sql)方法執行sql語句若是是查詢的話返回true,若是是更新或插入的話就返回false因此執行插入或更新語句應該使用executeUpdate():
(1) 返回SQL 數據操做語言 (DML) 語句的行數
(2) 對於無返回內容的 SQL 語句,返回 0。
c : statement和preparedStatement的區別:
1.statement每次執行sql語句,相關數據庫都要執行拼接sql語句的編譯,preparedstatement是預編譯的,代碼可重用支持批處理。使用 Statement 對象。在對數據庫只執行一次性存取的時侯,用 Statement 對象進行處理。PreparedStatement 對象的開銷比Statement大,對於一次性操做並不會帶來額外的好處。
2: statement須要拼接sql語句,preparedstatement的sql語句能夠用變量替換,達到代碼重用的好處
3.安全性:傳遞給Statement的字符串參數會自動被驅動器忽略。傳遞給PreparedStatement對象的參數能夠被強制進行類型轉換,使開發人員能夠確保在插入或查詢數據時與底層的數據庫格式匹配。
d : 使用PreparedStatement操做數據庫的三步驟:
1.建立PreparedStatement對象
2.設置每一個輸入參數的值
3.執行SQL語句
PreparedStatement用例:
JDBC用例:
2、JDBC—DAO模式
什麼是DAO? |