最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mybatis createcriteria和or的區(qū)別說明

 更新時(shí)間:2021年07月22日 08:38:15   作者:QQ_851228082  
這篇文章主要介紹了mybatis createcriteria和or的區(qū)別說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

createcriteria和or的區(qū)別

mybatis generator插件生成的example中,有createcriteria和or方法,他們有什么區(qū)別呢?

通過源碼,能很清楚的看出差別

createcriteria,當(dāng)沒有規(guī)則時(shí),則加入到現(xiàn)有規(guī)則,但有規(guī)則時(shí),不再加入到現(xiàn)有規(guī)則,只是返回創(chuàng)建的規(guī)則

public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
 }

or,創(chuàng)建的規(guī)則,加入到規(guī)則集中,并且是or的關(guān)系

public Criteria or() {
    Criteria criteria = createCriteriaInternal();
    oredCriteria.add(criteria);
    return criteria;
}

mybatis中Example的and和or

能用Example代碼解決的,我都不會(huì)去寫個(gè)SQL放在項(xiàng)目里。我希望讓代碼盡量優(yōu)雅、易讀,所以這里記錄一下關(guān)于MyBatis中Example的and和or的使用,主要是如下兩種場景:

  • where (條件1 and 條件2) or (條件3 and 條件4)
  • where (條件1 and 條件2) and (條件3 or 條件4)

where (條件1 and 條件2) or (條件3 and 條件4)

//條件1 and 條件2
example.createCriteria()
        .andEqualTo("isDeleted",IsDeleted.NOT_DELETED)
        .andEqualTo("name", projectCatalogEntity.getName());
//or (條件3 and 條件4)
example.or(example.createCriteria()
        .andEqualTo("isDeleted",IsDeleted.NOT_DELETED)
        .andEqualTo("code", projectCatalogEntity.getCode()));

WHERE ( is_deleted = ? and name = ? ) or ( is_deleted = ? and code = ? )

where (條件1 and 條件2) and (條件3 or 條件4)

//條件1 and 條件2
example.createCriteria()
        .andEqualTo("isDeleted",IsDeleted.NOT_DELETED))
        .andEqualTo("parentId", projectCatalogEntity.getParentId());
//and (條件3 or 條件4)
example.and(example.createCriteria()
        .andEqualTo("name", projectCatalogEntity.getName())
        .orEqualTo("code", projectCatalogEntity.getCode()));

WHERE ( is_deleted = ? and parent_id = ? ) and ( name = ? or code = ? )

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 樹莓派.GPRS.短信接收器

    樹莓派.GPRS.短信接收器

    這篇文章主要介紹了樹莓派.GPRS.短信接收器的相關(guān)知識,需要的朋友可以參考下
    2017-10-10
  • 解決RedisTemplate存儲(chǔ)至緩存數(shù)據(jù)出現(xiàn)亂碼的情況

    解決RedisTemplate存儲(chǔ)至緩存數(shù)據(jù)出現(xiàn)亂碼的情況

    這篇文章主要介紹了解決RedisTemplate存儲(chǔ)至緩存數(shù)據(jù)出現(xiàn)亂碼的情況,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Mybatis攔截器注解@Intercepts與@Signature注解使用

    Mybatis攔截器注解@Intercepts與@Signature注解使用

    本文主要介紹了Mybatis攔截器注解@Intercepts與@Signature注解使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • Java中Socket下載一個(gè)文本文件

    Java中Socket下載一個(gè)文本文件

    這篇文章主要介紹了Socket下載一個(gè)文本文件的實(shí)例代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-06-06
  • SpringBoot 多線程事務(wù)回滾的實(shí)現(xiàn)

    SpringBoot 多線程事務(wù)回滾的實(shí)現(xiàn)

    本文是基于springboot的@Async注解開啟多線程,并通過自定義注解和AOP實(shí)現(xiàn)的多線程事務(wù),避免繁瑣的手動(dòng)提交/回滾事務(wù),感興趣的可以了解一下
    2024-02-02
  • JavaWeb組件Servlet使用實(shí)例解析

    JavaWeb組件Servlet使用實(shí)例解析

    這篇文章主要介紹了JavaWeb組件Servlet使用實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • java實(shí)現(xiàn)Object和Map之間的轉(zhuǎn)換3種方式

    java實(shí)現(xiàn)Object和Map之間的轉(zhuǎn)換3種方式

    本篇文章主要介紹了java實(shí)現(xiàn)Object和Map之間的轉(zhuǎn)換3種方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • springboot?接收LocalDateTime方式

    springboot?接收LocalDateTime方式

    這篇文章主要介紹了springboot?接收LocalDateTime方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • java實(shí)現(xiàn)創(chuàng)建縮略圖、伸縮圖片比例生成的方法

    java實(shí)現(xiàn)創(chuàng)建縮略圖、伸縮圖片比例生成的方法

    這篇文章主要介紹了java實(shí)現(xiàn)創(chuàng)建縮略圖、伸縮圖片比例生成的方法,可實(shí)現(xiàn)針對圖片大小的縮放功能,是Java針對圖片操作的典型應(yīng)用,需要的朋友可以參考下
    2014-11-11
  • Java8新特性stream和parallelStream區(qū)別

    Java8新特性stream和parallelStream區(qū)別

    這篇文章主要介紹了Java8新特性stream和parallelStream區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11

最新評論

西乌珠穆沁旗| 锡林郭勒盟| 清流县| 收藏| 潼南县| 宁津县| 泊头市| 宣汉县| 兰溪市| 五河县| 甘洛县| 婺源县| 巴南区| 上栗县| 沾化县| 岐山县| 安图县| 当涂县| 长葛市| 射洪县| 萨迦县| 灵寿县| 怀安县| 民丰县| 漳浦县| 临武县| 佛山市| 杭州市| 翁牛特旗| 资溪县| 临沭县| 垣曲县| 剑川县| 噶尔县| 镇远县| 萝北县| 盐池县| 班戈县| 乌拉特后旗| 嘉禾县| 北辰区|