JDBC及DAO模式的使用


JDBC(全稱:Java Data Base Connectivity)是java數據庫連接簡稱 ,提供連接各種數據庫的能力

JDBC API主要的功能:

         1.與數據庫建立連接

         2.執行SQL語句

         3.處理結果

JDBC關鍵字的使用:

     1.DriverManager:依據數據庫的不同,管理JDBC驅動

     2.Connection:負責連接數據庫並且擔任傳送數據庫的任務

     3.Statement:由Connection產生、負責執行SQL語句

     4.ResultSet:負責保存Statement執行后所產生的查詢結果

     5.PreparedStatement接口(預編譯的SQL語句)提高了SQL語句的性能、代碼的安全性、代碼的可讀性和可維護性

 

 Statement常用方法:

   ResultSet executeQuery(String sql):執行SQL查詢並且獲取ResultSet對象

   Int executeUpdate(String sql):可以執行插入、刪除、更新等操作,返回值是執行該操作所影響的行數

   Boolean execute(String sql):可以執行任意SQL語句,然后獲得一個布爾值,表示是否返回ResultSet

   Boolean next():將光標從當前位置向下移動一行

   Boolean previous():游標從當前位置向上移動一行

   Void close():關閉ResultSet對象

   Int getInt(int colIndex):以int形式獲取結果集當前行指定列號值

   Int getInt(String colLabel):以int形式獲取結果集當前行指定的列名值

   Float getFloat(int colIndex):以float形式獲取結果集當前行指定列號值

   Float getFloat(String colLabel):以float形式獲取結果集當前指定列名值

  String getString(int colIndex):以Sting形式獲取當前行指定列號值

  String getString(String colLabel):以String形式獲取當前行指定列名值

 

PreparedStatement比Statement提高了代碼的可讀性和可維護性,提高了SQL語句執行的性能,提高了安全性

 

JDBC的操作步驟:

   1.加載JDBC驅動

   2.與數據庫建立連接

   3.創建Statement或PreparedStatement對象

   4.發送SQL語句,並且得到返回結果

   5.處理返回結果

   6.釋放資源

遍歷結果集中數據可使用列號或者列名標識列

 

 

數據訪問層 - DAO模式

 

持久化是將程序中的數據在瞬時狀態下和持久狀態間轉換的機制

持久化的主要操作:讀取、查找、保存、修改、刪除

DAO(Data Access Object):數據存取對象,位於業務邏輯和持久化數據之間,能夠實現對持久化數據的訪問

DAO在實體類與數據庫之間起着轉換器的作用,能夠把實體類轉換為數據庫中的記錄

DAO模式是作用:

1.隔離業務邏輯代碼和數據訪問代碼

2.隔離不同數據庫的實現

DAO模式的組成部分:

1.DAO接口

2.DAO實現類

3.實體類

4.數據庫連接和關閉工具類

 

 

分層開發:

一種化大為小,分而治之的軟件開發方法

分層的特點:

     1.每一層都有自己的職責

     2.上層不用關心下次的實現細節,上層通過下層提供的對外接口來使用其功能

     3.上一層調用下一層的功能,下一層不能調用上一層的功能

分層開發的好處:

     1.各層專注於自己功能的實現,便於提高質量

     2.便於分工協作,提高開發效率

     3.便於代碼復用

     4.便於程序擴展

分層原則:

    封裝性原則

       每個層次向外公開接口,但是隱藏內部細節

    順序訪問原則

       下一層為上一層服務,但不使用上層的服務

分層結構中,不同層之間通過實體類傳輸數據

 

根據分層開發DAO模式創建步驟:

開始流程:

1:建立數據庫epet,建表;

2:創建實體類,和相應的數據庫的表是對應的;

3:創建Dao的基類接口類;

4:創建Dao的實現類;

5:創建具體表的Dao類;

6:創建具體表的Dao實現類;

7:創建業務邏輯層的接口類;

8:創建業務邏輯層的接口實現類;

9:創建測試類;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM