欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mybatis if標(biāo)簽判斷不生效的解決方法

 更新時(shí)間:2021年02月07日 14:18:37   作者:暮靄層層楚天闊  
這篇文章主要介紹了mybatis if標(biāo)簽判斷不生效的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

實(shí)際需求

<if test="computationRule == '1'">
  FROM app_sz_bbb a
</if>
<if test="computationRule == '2'">
  FROM app_ccc a
</if>

這種情況不生效,

原因:mybatis是用OGNL表達(dá)式來解析的,在OGNL的表達(dá)式中,'0'會(huì)被解析成字符,java是強(qiáng)類型的,char 和 一個(gè)string 會(huì)導(dǎo)致不等,所以if標(biāo)簽中的sql不會(huì)被解析。

先說怎么解決

三種:

加 .toString()

<if test="computationRule == '1'.toString()">
  FROM app_sz_bbb a
</if>
<if test="computationRule == '2'.toString()">
  FROM app_ccc a
</if>

choose when 標(biāo)簽代替

<choose>
   <when test="computationRule == '1'">
   FROM app_sz_bbb a
   </when>
   <otherwise>
     FROM app_sz_bbb a
   </otherwise>
 </choose>

單引號(hào) 換成雙引號(hào)

<if test='computationRule == "1"'>
  FROM app_sz_bbb a
</if>
<if test='computationRule == "2"'>
  FROM app_ccc a
</if>

MyBatis 中if 標(biāo)簽 判斷字符串不生效

異常sql 的mapper 文件:

<if test="isBound != null and isBound !='' and isBound == '1'">
  and box_sid is not null 
</if>
<if test="isBound != null and isBound !='' and isBound == '2'">
  and box_sid is null 
</if>

正確sql 的mapper 文件

<if test="isBound != null and isBound !='' and isBound == '1'.toString()">
  and box_sid is not null 
</if>
<if test="isBound != null and isBound !='' and isBound == '2'.toString()">
  and box_sid is null 
 </if>

到此這篇關(guān)于mybatis if標(biāo)簽判斷不生效的解決方法的文章就介紹到這了,更多相關(guān)mybatis if標(biāo)簽判斷不生效內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 高吞吐、線程安全的LRU緩存詳解

    高吞吐、線程安全的LRU緩存詳解

    這篇文章主要介紹了高吞吐、線程安全的LRU緩存詳解,分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • Java @Value(

    Java @Value("${xxx}")取properties時(shí)中文亂碼的解決

    這篇文章主要介紹了Java @Value("${xxx}")取properties時(shí)中文亂碼的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java 函數(shù)編程詳細(xì)介紹

    Java 函數(shù)編程詳細(xì)介紹

    這篇文章主要介紹了Java函數(shù)式編程,lambda表達(dá)式可以被認(rèn)為是一個(gè)匿名函數(shù),可以在函數(shù)接口的上下文中使用。函數(shù)接口是只指定一個(gè)抽象方法的接口,下面來看文章的詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-11-11
  • Spring?MVC數(shù)據(jù)綁定方式

    Spring?MVC數(shù)據(jù)綁定方式

    這篇文章主要介紹了Spring?MVC數(shù)據(jù)綁定方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • SpringBoot?自定義注解實(shí)現(xiàn)涉密字段脫敏

    SpringBoot?自定義注解實(shí)現(xiàn)涉密字段脫敏

    關(guān)于數(shù)據(jù)脫敏,網(wǎng)上的文章都是硬編碼規(guī)則,比如對(duì)身份證,手機(jī)號(hào),郵件地址等固定寫法脫敏。本文在此基礎(chǔ)上,拓展動(dòng)態(tài)從數(shù)據(jù)庫查出涉密關(guān)鍵字執(zhí)行脫敏操作。感興趣的同學(xué)可以參考閱讀
    2023-03-03
  • 使用Spring-Retry解決Spring Boot應(yīng)用程序中的重試問題

    使用Spring-Retry解決Spring Boot應(yīng)用程序中的重試問題

    重試的使用場(chǎng)景比較多,比如調(diào)用遠(yuǎn)程服務(wù)時(shí),由于網(wǎng)絡(luò)或者服務(wù)端響應(yīng)慢導(dǎo)致調(diào)用超時(shí),此時(shí)可以多重試幾次。用定時(shí)任務(wù)也可以實(shí)現(xiàn)重試的效果,但比較麻煩,用Spring Retry的話一個(gè)注解搞定所有,感興趣的可以了解一下
    2023-04-04
  • Xml中使用foreach遍歷對(duì)象實(shí)現(xiàn)代碼

    Xml中使用foreach遍歷對(duì)象實(shí)現(xiàn)代碼

    這篇文章主要介紹了Xml中使用foreach遍歷對(duì)象實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-12-12
  • Mybatis批量插入返回插入成功后的主鍵id操作

    Mybatis批量插入返回插入成功后的主鍵id操作

    這篇文章主要介紹了Mybatis批量插入返回插入成功后的主鍵id操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Spring中的SpringApplicationRunListener詳細(xì)解析

    Spring中的SpringApplicationRunListener詳細(xì)解析

    這篇文章主要介紹了Spring中的SpringApplicationRunListener詳細(xì)解析,SpringApplicationRunListener是一個(gè)監(jiān)聽SpringApplication中run方法的接口,在項(xiàng)目啟動(dòng)過程的各個(gè)階段進(jìn)行事件的發(fā)布,需要的朋友可以參考下
    2023-11-11
  • MyBatisPlus項(xiàng)目的創(chuàng)建和使用

    MyBatisPlus項(xiàng)目的創(chuàng)建和使用

    本文介紹了MyBatis-Plus的基本使用方法,包括項(xiàng)目的創(chuàng)建和配置、增刪查改操作、日志打印以及條件構(gòu)造器的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11

最新評(píng)論