筆記 通用Mapper

2021-10-06 18:43:56 字數 1713 閱讀 2212

需要使用包裝型別,不能使用基本資料型別。

由於基本型別都有預設值,會導致mabatis在執行相關操作的時候很難判斷當前字段是否為null,所以mybatis環境下盡量不要使用基本資料型別。

int預設0,double預設0.0 .....

public

inte***ce

extends

//serviceimpl

@autowired

public employee findone

(employee emp)

3.建立測試類

//測試類

employee emp =

newemployee

(id,

"tom"

,***)

;//查詢條件

employee findemp = employeeservice.

findone

(emp)

;//查詢結果

system.out.

println

(findemp)

;//檢視結果

三.常見註解

1.@table註解

作用:建立實體類和資料庫表之間的對應關係

預設規則:實體類類名首字母小寫作為表名,employee類 -->employee表

用法:在@table註解的name屬性上對應資料庫的表名。

2.@column註解

作用:建立實體類與資料庫表中字段之間的對應關係

預設規則:實體類字段:駝峰式命名

資料庫字段:使用「_」區分各個單詞

用法:在@column註解中的name屬性指定目標欄位的欄位名

3.@id:設定實體類的字段為資料庫表對應的主鍵字段

注:使用selectbyprimarykey(),必須標明主鍵字段

4.@generatedvalue註解

自增主鍵用法:

@generatedvalue(strategy = generationtype.identity)

序列主鍵用法(oracle):

@generatedvalue(strategy = generationtype.identity, generator = "select seq_id.nextval from dual")

應用場景:購物車結賬

生成訂單資料 ->封裝到order物件中->儲存order物件->資料庫自動生成主鍵值->會寫到實體類order物件中

->生成一系列訂單詳情資料->封裝到list->在orderitem中設定order物件的主鍵值作為外來鍵->批量儲存list5.@trnsient註解

@table

(name=

"tab_emp"

)public

class

employee

四、常用方法

1.selectone方法:查詢一條資料

實體類封裝查詢條件生成where子句的規則:

a.使用非空的值生成where子句

b.在條件表示式中使用的都是「=」進行比較

3.existswithprimarykey(不常用):通過查詢主鍵判斷資料是否存在

神器 通用Mapper

極其方便的使用mybatis單錶的增刪改查。支援單錶操作,不支援通用的多表聯合查詢。我個人最早用 mybatis 時,先是完全手寫,然後用上了 mybatis 生成器 簡稱為 mbg 在使用 mbg 過程中,發現乙個很麻煩的問題,如果資料庫字段變化很頻繁,就需要反覆重新生成 並且由於 mbg 覆蓋生...

mysql 通用mapper 通用Mapper

原理是 如何實現動態拼接sql語句?思路 編寫mybatis的外掛程式,在執行過程中動態生成sql語句 2 簡介 3 在mybatis的配置檔案中進行配置 p public config 3.0 en 3.3 service 使用 servicepublic classnewuserservice ...

通用mapper的總結

通過唯一屬性 name 之類的 查詢乙個使用者用 selectone 查詢多個用 select 方法 查詢個數用 selectcount 如果要查詢所有的使用者 就在selectcount null 方法中傳入null 通過主鍵查詢 selectbyprimarykey 一定要用 id在bean中設...