MyBatis逆向工程生成的Example類的方法總結

 

很早以前就在項目開發中屢次使用MyBatis逆向工程生成的Example類,但一直沒有對其下的方法作一個簡單的總結,現總結以下:
1、mapper接口中的方法解析
mapper接口中的部分經常使用方法及功能以下:
方法 功能說明
int countByExample(UserExample example) thorws SQLException 按條件計數
int deleteByPrimaryKey(Integer id) thorws SQLException 按主鍵刪除
int deleteByExample(UserExample example) thorws SQLException 按條件刪除
String/Integer insert(User record) thorws SQLException 插入數據(返回值爲ID)
User selectByPrimaryKey(Integer id) thorws SQLException 按主鍵查詢
ListselectByExample(UserExample example) thorws SQLException 按條件查詢
ListselectByExampleWithBLOGs(UserExample example) thorws SQLException 按條件查詢(包括BLOB字段)。只有當數據表中的字段類型有爲二進制的纔會產生
int updateByPrimaryKey(User record) thorws SQLException 按主鍵更新
int updateByPrimaryKeySelective(User record) thorws SQLException 按主鍵更新值不爲null的字段
int updateByExample(User record, UserExample example) thorws SQLException 按條件更新
int updateByExampleSelective(User record, UserExample example) thorws SQLException 按條件更新值不爲null的字段
2、Example類解析
mybatis的逆向工程中會生成實體類及實體類對應的example類,example類用於添加條件,至關where後面的部分。
xxxExample example = new xxxExample(); 
Criteria criteria = new Example().createCriteria();
example類中的部分經常使用方法及功能以下:
方法 功能說明
example.setOrderByClause(「字段名 ASC」); 添加升序排列條件,DESC爲降序
example.setDistinct(false) 去除重複,boolean型,true爲選擇不重複的記錄
criteria.andXxxIsNull 添加字段xxx爲null的條件
criteria.andXxxIsNotNull 添加字段xxx不爲null的條件
criteria.andXxxEqualTo(value) 添加xxx字段等於value條件
criteria.andXxxNotEqualTo(value) 添加xxx字段不等於value條件
criteria.andXxxGreaterThan(value) 添加xxx字段大於value條件
criteria.andXxxGreaterThanOrEqualTo(value) 添加xxx字段大於等於value條件
criteria.andXxxLessThan(value) 添加xxx字段小於value條件
criteria.andXxxLessThanOrEqualTo(value) 添加xxx字段小於等於value條件
criteria.andXxxIn(List<?>) 添加xxx字段值在List<?>條件
criteria.andXxxNotIn(List<?>) 添加xxx字段值不在List<?>條件
criteria.andXxxLike(「%」+value+」%」) 添加xxx字段值爲value的模糊查詢條件
criteria.andXxxNotLike(「%」+value+」%」) 添加xxx字段值不爲value的模糊查詢條件
criteria.andXxxBetween(value1,value2) 添加xxx字段值在value1和value2之間條件
criteria.andXxxNotBetween(value1,value2) 添加xxx字段值不在value1和value2之間條件
注:在mybatis逆向工程生成的文件XxxExample.java中包含一個static的內部類Criteria,Criteria中的方法是定義SQL 語句where後的查詢條件。
3、總結XxxExample.java只能實現簡單條件增刪改查,複雜的功能還須要本身編寫sql代碼來實現。 
相關文章
相關標籤/搜索