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

MyBatis使用<foreach>標簽報錯問題及解決

 更新時間:2024年03月09日 10:45:38   作者:飛鴻先森  
這篇文章主要介紹了MyBatis使用<foreach>標簽報錯問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

背景

在使用mybatis過程中,<foreach>標簽算是比較常用的,最近在項目中遇到這樣一個問題,使用<foreach>標簽循環(huán)拼接SQL語句時

報了一個錯誤:

nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named ‘__frch_name_0’ in ‘class com.stand.modules.address.param.GeneralAddressQueryParam’

比較疑惑,這個標簽使用了很多次了,還是第一次遇到這樣的問題,通過查閱資料,得到了解決方案。

原因

首先貼出涉及到的實體類、Mapper接口和對應(yīng)的XML部分代碼

  • 用于Mapper接口傳參的實體類:
public class GeneralAddressQueryParam implements Serializable {

    /**
     * 地名,多級地名用逗號分隔
     */
    private String names;

    /**
     * 多地名查詢條件
     */
    private List<String> nameList;

    public String getNames() {
        return names;
    }

    public void setNames(String names) {
        this.names = names;
    }

    public List<String> getNameList() {
        return nameList;
    }

    public void setNameList(List<String> nameList) {
        this.nameList = nameList;
    }
}
  • Mapper接口
List<GeneralAddressFullNameDTO> multiNameQuery(GeneralAddressQueryParam queryParam);
  • XML部分代碼
<if test="nameList != null and nameList.size() > 0">
    <foreach collection="nameList" item="name">
    	and address like concat('%', #{name}, '%')
    </foreach>
</if>

以上就是問題涉及到的部分代碼,

出錯的原因呢,就是在<foreach>標簽中取值出的錯,

網(wǎng)上查閱資料說是因為parameterType接收的參數(shù)不是List導(dǎo)致的,具體情況未核實。

解決方案

解決方法比較簡單,或一種取值方式即可

<foreach>標簽中遍歷出來的值換做如下方式獲取

<if test="nameList != null and nameList.size() > 0">
    <foreach collection="nameList" item="name" index="index">
    	and address like concat('%', #{nameList[${index}]}, '%')
    </foreach>
</if>

總結(jié)

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

相關(guān)文章

  • List集合中對數(shù)據(jù)實現(xiàn)多重規(guī)則進行排序的案例

    List集合中對數(shù)據(jù)實現(xiàn)多重規(guī)則進行排序的案例

    今天小編就為大家分享一篇關(guān)于List集合中對數(shù)據(jù)實現(xiàn)多重規(guī)則進行排序的案例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • Spring Boot 中的 @ConditionalOnBean 注解作用及基本用法

    Spring Boot 中的 @ConditionalOnBean 注解作用及基

    在 Spring Boot 中,@ConditionalOnBean 可以幫助我們根據(jù) 是否存在特定 Bean 來 動態(tài)注冊 Bean,廣泛用于 按需加載、自動配置 等場景,本文給大家介紹Spring Boot 中的 @ConditionalOnBean 注解,感興趣的朋友一起看看吧
    2025-04-04
  • 實例解析Java設(shè)計模式編程中的適配器模式使用

    實例解析Java設(shè)計模式編程中的適配器模式使用

    適配器模式的主要作用是在新接口和老接口之間進行適配,通過將一個類的接口轉(zhuǎn)換成客戶期望的另一個接口,讓原本不兼容的接口可以合作無間,本文以實例解析Java設(shè)計模式編程中的適配器模式使用,需要的朋友可以參考下
    2016-05-05
  • 帶你快速搞定java IO

    帶你快速搞定java IO

    這篇文章主要介紹了Java IO流 文件傳輸基礎(chǔ)的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下,希望能給你帶來幫助
    2021-07-07
  • 深度解析JDK和Maven究竟是什么,兩者之間有什么聯(lián)系

    深度解析JDK和Maven究竟是什么,兩者之間有什么聯(lián)系

    JDK是Java開發(fā)基礎(chǔ)工具包,負責(zé)編譯、運行,Maven是項目管理工具,處理依賴和構(gòu)建流程,二者協(xié)作支撐項目全生命周期,配置國內(nèi)外鏡像可優(yōu)化依賴下載效率,本文主要給大家講解JDK和Maven究竟是什么,兩者之間有什么聯(lián)系,感興趣的朋友一起看看吧
    2025-08-08
  • MyBatisPlus3如何向數(shù)據(jù)庫中存入List

    MyBatisPlus3如何向數(shù)據(jù)庫中存入List

    本文主要介紹了Mybatis Plus的類型處理器的使用,通過User.java和UserMapper.xml示例進行詳細的解析,并提供了JSON解析器的使用方法,希望通過這篇文章,可以幫助大家更好的理解和掌握Mybatis Plus的類型處理器
    2024-10-10
  • SpringBoot內(nèi)嵌tomcat處理有特殊字符轉(zhuǎn)義的問題

    SpringBoot內(nèi)嵌tomcat處理有特殊字符轉(zhuǎn)義的問題

    這篇文章主要介紹了SpringBoot內(nèi)嵌tomcat處理有特殊字符轉(zhuǎn)義的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • springboot實現(xiàn)配置兩個parent的方法

    springboot實現(xiàn)配置兩個parent的方法

    這篇文章主要介紹了springboot實現(xiàn)配置兩個parent的方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Spring @Bean注解的使用場景與案例實現(xiàn)

    Spring @Bean注解的使用場景與案例實現(xiàn)

    隨著SpringBoot的流行,我們現(xiàn)在更多采用基于注解式的配置從而替換掉了基于XML的配置,所以本篇文章我們主要探討基于注解的@Bean以及和其他注解的使用
    2023-03-03
  • Java將byte[]轉(zhuǎn)圖片存儲到本地的案例

    Java將byte[]轉(zhuǎn)圖片存儲到本地的案例

    這篇文章主要介紹了Java將byte[]轉(zhuǎn)圖片存儲到本地的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10

最新評論

咸阳市| 繁昌县| 丰宁| 吴忠市| 大竹县| 寻甸| 广西| 永吉县| 遂川县| 杨浦区| 伊川县| 绿春县| 庆阳市| 迁西县| 丹凤县| 西藏| 阳朔县| 顺昌县| 林州市| 隆回县| 会昌县| 凉山| 突泉县| 丹巴县| 土默特左旗| 农安县| 贵阳市| 朔州市| 孝感市| 黄浦区| 文化| 栖霞市| 四子王旗| 桃园县| 黄梅县| 星座| 吉林省| 郁南县| 阿鲁科尔沁旗| 镇宁| 故城县|