Mybatis 四 使用註解開發

2021-10-06 02:40:33 字數 1808 閱讀 8887

- 大家之前都學過物件導向程式設計,也學習過介面,但在真正的開發中,很多時候我們會選擇面向介面程式設計

-根本原因 : 解耦 , 可拓展 , 提高復用 , 分層開發中 , 上層不用管具體的實現 , 大家都遵守共同的標準 , 使得開發變得容易 , 規範性更好

- 在乙個物件導向的系統中,系統的各種功能是由許許多多的不同物件協作完成的。在這種情況下,各個物件內部是如何實現自己的,對系統設計人員來講就不那麼重要了;

- 而各個物件之間的協作關係則成為系統設計的關鍵。小到不同類之間的通訊,大到各模組之間的互動,在系統設計之初都是要著重考慮的,這也是系統設計的主要工作內容。面向介面程式設計就是指按照這種思想來程式設計。

關於介面的理解

- 介面從更深層次的理解,應是定義(規範,約束)與實現(名實分離的原則)的分離。

- 介面的本身反映了系統設計人員對系統的抽象理解。

- 介面應有兩類:

- 第一類是對乙個個體的抽象,它可對應為乙個抽象體(abstract class);

- 第二類是對乙個個體某一方面的抽象,即形成乙個抽象面(inte***ce);

- 乙個體有可能有多個抽象面。抽象體與抽象面是有區別的。

三個面向區別

- 物件導向是指,我們考慮問題時,以物件為單位,考慮它的屬性及方法 .

- 面向過程是指,我們考慮問題時,以乙個具體的流程(事務過程)為單位,考慮它的實現 .

- 介面設計與非介面設計是針對復用技術而言的,與物件導向(過程)不是乙個問題.更多的體現就是對系統整體的架構

註解在介面上實現

@select

("select * from user"

)list

getusers()

;

需要再核心配置檔案中繫結介面!

>

class

=/>

>

測試

我們可以在工具類建立的時候實現自動提交事務!

public

static sqlsession getsqlsession()

編寫介面,增加註解

public

inte***ce")

user getuserbyid

(@param

("id"

)int id)

;@insert

("insert into user(id,name,pwd) values (#,#,#)"

)int

adduser

(user user)

;@update

("update user set name=#,pwd=# where id = #"

)int

updateuser

(user user)

;@delete

("delete from user where id = #"

)int

deleteuser

(@param

("uid"

)int id)

;}

測試類

【注意:我們必須要講介面註冊繫結到我們的核心配置檔案中!】

關於@param() 註解

MyBatis 使用註解開發

關於介面的理解 乙個個體有可能有多個抽象面。抽象體與抽象面是有區別的。三個面向區別 我們在我們的介面中新增註解 查詢全部使用者 select select id,name,pwd password from user public list getalluser 在mybatis的核心配置檔案中注入...

Mybatis使用註解開發

1.註解在介面實現 select select from user public list getusers 2.配置檔案中繫結介面 class 3.測試 本質 反射機制實現 底層 動態 4.crud select select from user list getusers 方法存在多個引數,所有...

四 MyBatis04 使用註解開發

1 我們在我們的介面中新增註解 查詢全部使用者 select select id,username,pwd from user public list getalluser 2 在mybatis的核心配置檔案中注入 class 3 我們去進行測試 test public void testgetal...