关于Mybatis的Example(and,or)应⽤
椒盐花菜
近期的⼀个项⽬中遇到Mybatis的Example的and or 的应⽤,感觉有必要记录⼀下(个⼈见解,有问题请指出。谢谢)
1.在Example中的每⼀个Criteria相当于⼀个括号,把⾥⾯的内容当成⼀个整体
大姑子
where (Urid = "11" and pointname = "22")
人多手杂
BaPointsExample.Criteria criteria1 = ateCriteria();
criteria1.andUridEqualTo("11");
criteria1.andPointnameLike("22");地狱犬座
2.在Criteria中没有直接的or的构造⽅法(⾄少我不知道)所以碰到⼀下where 后 and or的连⽤的话会有点⿇烦
2.1 where (条件1 and 条件2) or ( 条件3 and 条件4)
BaPointsExample.Criteria criteria1 = ateCriteria();
criteria1.andUridEqualTo('11');
criteria1.atlike('22'));
BaPointsExample.Criteria criteria2 = ateCriteria();
criteria2.andUrnameEqualTo('33');
criteria2.atlike('44'));
<(criteria2);
2.2 where 条件1 and (条件2 or 条件3)这是我碰到的问题,在⽹上看到⼀种拆分的⽅法感觉很好
芹菜凉拌A and (
B or
C ) ==> ( A and B ) or ( A and C )
BaPointsExample.Criteria criteria1 = ateCriteria();
回族禁忌
criteria1.andUridEqualTo('11');
绿色校园作文criteria1.atlike('22'));
BaPointsExample.Criteria criteria2 = ateCriteria();
criteria2.andUridEqualTo('11');美白针有效果吗
criteria2.atlike('33'));
<(criteria2);
这是我在项⽬中遇到的,正好能解决我的问题。感觉还有更好的⽅法,正在查找尝试,这种⽅法简单的还可以,复杂的就吃⼒了。