mybatis Example的Criteria用法:or與isNull詳解
mybatis Example的Criteria用法or與isNull
1.or
BaUserExample baUserExample = new BaUserExample();
Criteria criteria1 = baUserExample.createCriteria();
criteria1.andOrgIdEqualTo(“1”);
criteria1.andDeptIdEqualTo(“1”);
Criteria criteria2 = baUserExample.createCriteria();
criteria2.andUserNameEqualTo(“name”);
criteria2.andEmailLike("%test@%");
baUserExample.or(criteria2);
userMapper.countByExample(baUserExample);
2.isNull
為空要用isNull() 不要用equalTo(null) ,否則會(huì)報(bào)錯(cuò)。
mybatis Criteria的使用
查詢名字中帶有字母 r ,性別為男性(1)或者email中帶有數(shù)字1的人員信息
@Test
public void test1() throws IOException {
SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
SqlSession openSession = sqlSessionFactory.openSession(true);
try {
EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class);
// List<Employee> selectAll = mapper.selectByExample(null);
EmployeeExample example = new EmployeeExample();
Criteria criteria = example.createCriteria();
criteria.andNameLike("%r%");
criteria.andGenderEqualTo("1");
Criteria criteria2 = example.createCriteria();
criteria2.andEmailLike("%1%");
example.or(criteria2);
List<Employee> select = mapper.selectByExample(example);
for(Employee employee :select) {
System.out.println(employee.getName()+employee.getEmail());
}
}finally {
openSession.close();
}
}
1.先實(shí)例化一個(gè)EmployeeExample對象
2.調(diào)用createCriteria()方法
3.查詢名字中帶有字母 r ,性別為男性(1)之間是and關(guān)系
criteria.andNameLike("%r%");
criteria.andGenderEqualTo("1");
4.查詢email中帶有數(shù)字1,并且已第一個(gè)criteria為基準(zhǔn)與其進(jìn)行or運(yùn)算
Criteria criteria2 = example.createCriteria();
criteria2.andEmailLike("%1%");
example.or(criteria2);
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java實(shí)現(xiàn)人機(jī)對戰(zhàn)猜拳游戲
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)人機(jī)對戰(zhàn)猜拳游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-07-07
解決Springboot全局異常處理與AOP日志處理中@AfterThrowing失效問題
這篇文章主要介紹了解決Springboot全局異常處理與AOP日志處理中@AfterThrowing失效問題,文中介紹了兩種失效場景,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2023-05-05
基于logback實(shí)現(xiàn)純java版本的SDK組件
這篇文章主要介紹了基于logback實(shí)現(xiàn)純java版本的SDK組件,在項(xiàng)目開發(fā)過程中通常會(huì)使用logback作為日志記錄的依賴工具,使用方式是引入logback相關(guān)jar包,然后配置logback.xml配置文件的方式來實(shí)現(xiàn),需要的朋友可以參考下2023-11-11
java關(guān)于并發(fā)模型中的兩種鎖知識(shí)點(diǎn)詳解
在本篇文章了小編給大家整理的是一篇關(guān)于java關(guān)于并發(fā)模型中的兩種鎖知識(shí)點(diǎn)詳解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。2021-04-04
mybatis教程之查詢緩存(一級(jí)緩存二級(jí)緩存和整合ehcache)
這篇文章主要介紹了mybatis教程之查詢緩存(一級(jí)緩存二級(jí)緩存和整合ehcache),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
springMVC自定義注解,用AOP來實(shí)現(xiàn)日志記錄的方法
下面小編就為大家分享一篇springMVC自定義注解,用AOP來實(shí)現(xiàn)日志記錄的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01
Java中json使用方法_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
JSON(JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式, json是個(gè)非常重要的數(shù)據(jù)結(jié)構(gòu),在web開發(fā)中應(yīng)用十分廣泛。下面通過本文給大家講解Java中json使用方法,感興趣的朋友一起看看吧2017-07-07
java簡單實(shí)現(xiàn)斗地主發(fā)牌功能
這篇文章主要為大家詳細(xì)介紹了java簡單實(shí)現(xiàn)斗地主發(fā)牌功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06
基于idea 的 Java中的get/set方法之優(yōu)雅的寫法
這篇文章主要介紹了基于idea 的 Java中的get/set方法之優(yōu)雅的寫法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-01-01

