亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

mybatis if傳入字符串?dāng)?shù)字踩坑記錄及解決

 更新時(shí)間:2023年02月07日 09:36:09   作者:搬運(yùn)Gong  
這篇文章主要介紹了mybatis if傳入字符串?dāng)?shù)字踩坑記錄及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

mybatis if傳入字符串?dāng)?shù)字踩坑

前臺(tái)頁(yè)面內(nèi)容,注意這里的類型為字符串類型的數(shù)字

<li>
?? ?<label>支付類型:</label>
?? ?<form:select path="payType" class="input-medium">
?? ??? ?<form:option value="">全部</form:option>
?? ??? ?<form:option value="1">線上支付</form:option>
?? ??? ?<form:option value="3">線下支付</form:option>
?? ?</form:select>
</li>

后臺(tái) MVC 接收參數(shù):

Class RefundLog {
?? ?....
?? ?/**
?? ? * 支付類型 1:線上支付服務(wù),3:線下支付服務(wù)
?? ? */
?? ?private String payType;

?? ?.....
}

public String refundOrderList(RefundLog refundLog, HttpServletRequest request, HttpServletResponse response, Model model) {
?? ?.....
}

此時(shí) mybatis 中使用常規(guī)的字符串判斷,不會(huì)進(jìn)入條件,如下,錯(cuò)誤的寫法:

<if test="payType == '1'">
?? ?AND rl.pay_type in ('1','ZFBA','WEIX')
</if>

經(jīng)過(guò)調(diào)試發(fā)現(xiàn),SQL 未進(jìn)入判斷?。?!

正確的寫法如下

將字符串?dāng)?shù)字toString 一下?。。?!

<if test="payType == '1'.toString()">
?? ?AND rl.pay_type in ('1','ZFBA','WEIX')
</if>

搞定??!

mybatis if比較字符串相等問(wèn)題

在mybatis中,使用<if test="flag=='1'">

flag為string類型傳入,其值也是“1”,但是這個(gè)等式的返回結(jié)果是false

最后發(fā)現(xiàn)mybatis將'1'解析為char類型,所有不相等

可將<if test="flag=='1'">改為<if test='flag=="1"'>或者<if test="flag==1">

這個(gè)誤區(qū)在使用mybatis好多年都沒(méi)有發(fā)現(xiàn),所以盡量不要使用單字符的String字符串來(lái)進(jìn)行比較

mybatis是用OGNL表達(dá)式來(lái)解析的,在OGNL的表達(dá)式中,單引號(hào)里單個(gè)字符會(huì)被解析成char類型(多個(gè)字符是可以的),java是強(qiáng)類型的,char 和一個(gè)string 會(huì)導(dǎo)致不等

總結(jié)

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

相關(guān)文章

  • SpringBoot整合Redis使用@Cacheable和RedisTemplate

    SpringBoot整合Redis使用@Cacheable和RedisTemplate

    本文主要介紹了SpringBoot整合Redis使用@Cacheable和RedisTemplate,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Spring Data JPA 之 JpaRepository的使用

    Spring Data JPA 之 JpaRepository的使用

    這篇文章主要介紹了Spring Data JPA 之 JpaRepository的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • springboot如何開(kāi)啟一個(gè)監(jiān)聽(tīng)線程執(zhí)行任務(wù)

    springboot如何開(kāi)啟一個(gè)監(jiān)聽(tīng)線程執(zhí)行任務(wù)

    這篇文章主要介紹了springboot如何開(kāi)啟一個(gè)監(jiān)聽(tīng)線程執(zhí)行任務(wù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • JAXB命名空間及前綴_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    JAXB命名空間及前綴_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    這篇文章主要給大家介紹了關(guān)于JAXB命名空間及前綴的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-08-08
  • mybatis-plus之如何根據(jù)數(shù)據(jù)庫(kù)主鍵定義字段類型

    mybatis-plus之如何根據(jù)數(shù)據(jù)庫(kù)主鍵定義字段類型

    這篇文章主要介紹了mybatis-plus之如何根據(jù)數(shù)據(jù)庫(kù)主鍵定義字段類型問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Java向List集合中批量添加元素的實(shí)現(xiàn)方法

    Java向List集合中批量添加元素的實(shí)現(xiàn)方法

    這篇文章主要介紹了Java向List集合中批量添加元素的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • SpringBoot框架整合SwaggerUI的示例代碼

    SpringBoot框架整合SwaggerUI的示例代碼

    項(xiàng)目中使用了很多現(xiàn)成的框架,都是項(xiàng)目經(jīng)理、架構(gòu)師帶來(lái)的,從來(lái)沒(méi)有自己整合過(guò),今天給大家介紹下SpringBoot框架整合SwaggerUI的過(guò)程,感興趣的朋友跟隨小編一起看看吧
    2022-02-02
  • SpringBoot整合Mybatis與thymleft實(shí)現(xiàn)增刪改查功能詳解

    SpringBoot整合Mybatis與thymleft實(shí)現(xiàn)增刪改查功能詳解

    MybatisPlus是國(guó)產(chǎn)的第三方插件,?它封裝了許多常用的CURDapi,免去了我們寫mapper.xml的重復(fù)勞動(dòng)。本文將整合MybatisPlus實(shí)現(xiàn)增刪改查功能,感興趣的可以了解一下
    2022-12-12
  • 全面解釋java中StringBuilder、StringBuffer、String類之間的關(guān)系

    全面解釋java中StringBuilder、StringBuffer、String類之間的關(guān)系

    String的值是不可變的,這就導(dǎo)致每次對(duì)String的操作都會(huì)生成新的String對(duì)象,不僅效率低下,而且大量浪費(fèi)有限的內(nèi)存空間,StringBuffer是可變類,和線程安全的字符串操作類,任何對(duì)它指向的字符串的操作都不會(huì)產(chǎn)生新的對(duì)象,StringBuffer和StringBuilder類功能基本相似
    2013-01-01
  • Spring中配置Transaction與不配置的區(qū)別及說(shuō)明

    Spring中配置Transaction與不配置的區(qū)別及說(shuō)明

    這篇文章主要介紹了Spring中配置Transaction與不配置的區(qū)別及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07

最新評(píng)論