mybatis中的mapper接口文件以及example类的实例函数以及详解

发布时间:2019-10-06  栏目:计算机教程  评论:0 Comments

关于Mybatis的Example(and ,or )应用,mybatisexample

近期的一个项目中遇到Mybatis的Example的and or
的应用,感觉有必要记录一下(个人见解,有问题请指出。谢谢)

 

1.在Example中的每一个Criteria相当于一个括号,把里面的内容当成一个整体

where  (Userid = “11” and pointname = “22”)

BasePointsExample.Criteria criteria1 = example.createCriteria();
criteria1.andUseridEqualTo("11");
criteria1.andPointnameLike("22");

2.在Criteria中没有直接的or的构造方法(至少我不知道)所以碰到一下where 
后  and or的连用的话会有点麻烦

       2.1     where (条件1 and 条件2) or ( 条件3 and  条件4)

 BasePointsExample.Criteria criteria1 = example.createCriteria();
            criteria1.andUseridEqualTo('11');
            criteria1.andPointnameLike(StringUtil.concatlike('22'));

  BasePointsExample.Criteria criteria2 = example.createCriteria();
            criteria2.andUsernameEqualTo('33');
            criteria2.andPointcontentLike(StringUtil.concatlike('44'));
  example.or(criteria2);

  2.2   where 条件1 and (条件2   or   条件3) 
 这是我碰到的问题,在网上看到一种拆分的方法感觉很好

               A    and  ( B  or   C  )   ==>  ( A  and  B )  or  (
A  and C )

   

 BasePointsExample.Criteria criteria1 = example.createCriteria();
            criteria1.andUseridEqualTo('11');
            criteria1.andPointnameLike(StringUtil.concatlike('22'));

            BasePointsExample.Criteria criteria2 = example.createCriteria();
            criteria2.andUseridEqualTo('11');
            criteria2.andPointcontentLike(StringUtil.concatlike('33'));
            example.or(criteria2);

  

这是我在项目中遇到的,正好能解决我的问题。感觉还有更好的方法,正在查找尝试,这种方法简单的还可以,复杂的就吃力了。

 

http://www.bkjia.com/Javabc/1306067.htmlwww.bkjia.comtruehttp://www.bkjia.com/Javabc/1306067.htmlTechArticle关于Mybatis的Example(and ,or
)应用,mybatisexample 近期的一个项目中遇到Mybatis的Example的and or
的应用,感觉有必要记录一下(个人见解,有问题请…

paincupid的专栏

你得到你想要的了么?

 

 

 

【公告】博客系统优化升级
    Unity3D学习,离VR开发还有一步     博乐招募开始啦    
虚拟现实,一探究竟    

 

留下评论

网站地图xml地图