Mybatis 逆向工程生成mapper.xml 對映檔案中方法的使用
方法1:selectByExample(TbItemDescExample example)
返回值:List<TbItemDesc>
作用:通過特定限制條件查詢資訊,example用於生成一個Criteria物件來設定查詢條件
方法2:selectByPrimaryKey(Long itemId)
返回值:TbItemDesc
作用:通過主鍵查詢
方法3:selectByExampleWithBLOBs(TbItemDescExample example)
返回值:List<TbItemDesc>
作用:根據特定限制條件查詢,返回值包含型別為text的列(預設查詢並不會返回該列的資訊)。example用於生成一個 Criteria物件來設定查詢條件,具體使用方法和方法1是一樣的,唯一的把不同就是返回值是所有列。
方法4:插入 insert insertSelective
兩方法相同處:傳入的引數都是POJO,返回值都是int型別的受影響的行數。
不同處:a. insert 會插入所有的資訊,如果傳入的物件某一屬性為空,則插入空,如果資料庫中設定了預設值,默 認值就失效了。
b.insertSelective 只會插入含有資料的屬性,對於為空的屬性,不予以處理,這樣的話如果資料庫中設定 有預設值,就不會被空值覆蓋了。
Criteria物件來設定查詢條件,具體使用方法和方法1是一樣的,唯一的把不同就是返回值是所有列。
方法5:刪除 deleteByExample deleteByPrimaryKey
deletByExample:根據特定限制條件刪除,具體使用的方法和查詢的時候是一樣的。
deleteByPrimaryKey:根據主鍵刪除。
方法6:更新 updateByExameple updateByExampleSelective updateByExampleWithBLOBs
updateByPrimaryKey updateByPrimaryKeySelective updateByPrimaryKeyWithBLOBs
更新在這裡有6個方法,可以分為2組:
第一組:根據特定限制條件進行更新
引數1:TbItemDesc record -> 要更新的物件
引數2:TbItemDescExample example -> 生成一個Criteria物件來設定查詢條件
方法1:updateByExample(TbItemDesc record, TbItemDescExample example)
作用:根據特定的限制條件進行更新除了text型別(資料庫)的所有列。
方法2:updateByExampleSelective(TbItemDesc record, TbItemDescExample example)
作用:根據特定的限制條件更新所有設定了值的列。
方法3:updateByExampleWithBLOBs(TbItemDesc record, TbItemDescExample example)
作用:根據特定的限制條件進行更新所有列。
第二組:根據ID進行更新
引數:TbItemDesc record -> 要更新的物件
方法1:updateByPrimaryKey(TbItemDesc record)
作用:通過ID更新除了text型別(資料庫)的所有列
方法2:updateByPrimaryKeySelective(TbItemDesc record)
作用:通過ID更新所有設定了值的列。
方法3:updateByPrimaryKeyWithBLOBs(TbItemDesc record)
作用:通過ID進行更新所有列。
方法7:計數(計數就一個方法,根據限制條件計數,example在前面已經說過了,在這裡就不敘述了。)
總結:
- Example和Primarykey用來指定要 刪除 / 更新 / 查詢 的行。
- 不加字尾、Selective字尾、WithBLOBs字尾用來限制要 刪除 / 更新 / 查詢 的列。
- 參考圖(不嚴謹,僅供理解參考)