mybatis中關於example類詳解

2021-08-27 06:00:11 字數 2365 閱讀 2013

一、什麼是example類

mybatis-generator會為每個字段產生如上的criterion,如果表的字段比較多,產生的example類會十分龐大。理論上通過example類可以構造你想到的任何篩選條件。在mybatis-generator中加以配置,配置資料表的生成操作就可以自動生成example了。具體配置可以參考mbg有關配置。

下面是mybatis自動生成example的使用。

二、了解example成員變數

//公升序還是降序

//引數格式:欄位+空格+asc(desc)

protected string orderbyclause;

//去除重複

//true是選擇不重覆記錄

protected boolean distinct;

//自定義查詢條件

//criteria的集合,集合中物件是由or連線

protected listoredcriteria;

//內部類criteria包含乙個cretiron的集合,

//每乙個criteria物件內包含的cretiron之間

//是由and連線的

public static class criteria extends generatedcriteria

}//是mybatis中逆向工程中的**模型

protected abstract static class generatedcriteria

//是最基本,最底層的where條件,用於字段級的篩選

public static class criterion

三、example使用前的準備

long

countbyexample

(competingstoreexample example)

;

listselectbyexample

(competingstoreexample example)

;

在我們的測試類裡:

userexample example =

new userexample();

userexample.criteria criteria = example.createcriteria();

四、查詢使用者數量

類似於:select count(*) from user

五、where條件查詢或多條件查詢

example.setorderbyclause(

"age asc");

//公升序

example.setdistinct(

false);

//不去重

if(!stringutils.isnotblank(user.getname()))

if(!stringutils.isnotblank(user.get***()))

類似於:select * from user where name= and ***= order by age asc;

userexample.criteria criteria1 = example.createcriteria();

userexample.criteria criteria2 = example.createcriteria();

if(!stringutils.isnotblank(user.getname()))

if(!stringutils.isnotblank(user.get***()))

example.or(criteria2);

類似於:select * from user where name= or ***= ;

六、模糊查詢

if(!stringutils.isnotblank(user.getname()))

類似於:select * from user where name like %%

七、分頁查詢

int start = (currentpage -

1) * rows;

//分頁查詢中的一頁數量

example.setpagesize(rows);   

//開始查詢的位置

example.setstartrow(start);

類似於:select * from user limit start to rows

關於mybatis中llike模糊查詢中引數問題

在mybatis中經常要寫到like 查詢,以前從來沒有遇到什麼問題,突然遇到乙個問題,找了好長時間沒找到,最後找到了,是關於 和 的使用的,總結如下 name like 表示式 and falg 本次示例中共兩個條件,乙個是name like 表示式,還有flag相等,這個是使用 佔位符,沒有任何...

mybatis中關於example類詳解

這幾天剛接觸example,很多內容都是破碎的,寫一篇博文加深理解。一 什麼是example類 mybatis generator會為每個字段產生如上的criterion,如果表的字段比較多,產生的example類會十分龐大。理論上通過example類可以構造你想到的任何篩選條件。在mybatis ...

關於Mybatis中的幾個常用標籤

1.propertiesresource jdbcconfig.properties properties一般都被用來引入外部配置檔案,然後讀取,當然,引入的配置檔案裡的內容一定要是按照鍵值對的形式儲存的。下面看看怎麼讀取吧!name driver value name url value name...