mybatis test標(biāo)簽如何判斷值是否相等
mybatis test標(biāo)簽判斷值是否相等
mybatis可以很方便生成動(dòng)態(tài)sql,
常用的方式如下:
<if test="id != null and id !=''">
and id != #{id}
</if>
但是在實(shí)際使用過(guò)程中可能會(huì)需要對(duì)某個(gè)輸入的值做具體判斷,然后根據(jù)輸入?yún)?shù)的值進(jìn)行分支處理
<select id="xxxx" parameterType="map" resultMap="BaseResultMap">
。。。。。。。
<choose>
<when test="hasAttach.toString() == '1'.toString()">
having attachCount >= #{hasAttach}
</when>
<otherwise>
having attachCount = #{hasAttach}
</otherwise>
</choose>
鑒于這個(gè)mapper查詢接口傳入的參數(shù)為Map<String,Object>類型,如果不進(jìn)行toString的轉(zhuǎn)換的話默認(rèn)是對(duì)進(jìn)行進(jìn)行的對(duì)比,因此就無(wú)法達(dá)到預(yù)期的比較字符串的效果。
mybatis if test標(biāo)簽、動(dòng)態(tài)sql問(wèn)題
之前用#{0}和#{1}雖然值能傳到后臺(tái)但一直不能正確校驗(yàn),怎么改都無(wú)法校驗(yàn)成功。
錯(cuò)誤代碼:

這是因?yàn)椋篸ao層(或mapper層)中沒(méi)有用@Param(“”)正確傳值。
修改后:

mybatis中也把0,1改成@Paran定義的值就可以了:

體驗(yàn):細(xì)節(jié)很重要,不可忽略。
做畢設(shè),為這個(gè)問(wèn)題糾結(jié)兩天,網(wǎng)上沒(méi)有人提到這一點(diǎn),耽誤很久,以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring Boot與Kotlin定時(shí)任務(wù)的示例(Scheduling Tasks)
這篇文章主要介紹了Spring Boot與Kotlin定時(shí)任務(wù)的示例(Scheduling Tasks),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-03-03
Mybatis-plus更新字段為null兩種常用方法及優(yōu)化
Mybatis Plus在進(jìn)行更新操作時(shí),默認(rèn)情況下是不能將字段更新為null的,如果要更新字段為null,需要進(jìn)行以下處理,這篇文章主要給大家介紹了關(guān)于Mybatis-plus更新字段為null的兩種常用方法及優(yōu)化,需要的朋友可以參考下2024-03-03
IDEA配置Tomcat創(chuàng)建web項(xiàng)目的詳細(xì)步驟
Tomcat是一個(gè)Java?Web應(yīng)用服務(wù)器,實(shí)現(xiàn)了多個(gè)Java?EE規(guī)范(JSP、Java?Servlet等),這篇文章主要給大家介紹了關(guān)于IDEA配置Tomcat創(chuàng)建web項(xiàng)目的詳細(xì)步驟,需要的朋友可以參考下2023-12-12
SpringBoot實(shí)現(xiàn)Thymeleaf驗(yàn)證碼生成
本文使用SpringBoot實(shí)現(xiàn)Thymeleaf驗(yàn)證碼生成,使用后臺(tái)返回驗(yàn)證碼圖片,驗(yàn)證碼存到session中后端實(shí)現(xiàn)校驗(yàn),前端只展示驗(yàn)證碼圖片。感興趣的可以了解下2021-05-05
Springcloud eureka搭建高可用集群過(guò)程圖解
這篇文章主要介紹了Springcloud eureka搭建高可用集群過(guò)程圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04
java+selenium實(shí)現(xiàn)自動(dòng)化打開頁(yè)面的方法
今天小編就為大家分享一篇java+selenium實(shí)現(xiàn)自動(dòng)化打開頁(yè)面的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
SpringBoot如何基于POI-tl和word模板導(dǎo)出龐大的Word文件
這篇文章主要介紹了SpringBoot如何基于POI-tl和word模板導(dǎo)出龐大的Word文件,poi-tl是一個(gè)基于Apache?POI的Word模板引擎,也是一個(gè)免費(fèi)開源的Java類庫(kù)2022-08-08
Struts2中ognl遍歷數(shù)組,list和map方法詳解
這篇文章主要介紹了Struts2中ognl遍歷數(shù)組,list和map方法詳解,需要的朋友可以參考下。2017-09-09

