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

mybatis使用foreach踩坑及解決

 更新時間:2024年08月20日 09:07:53   作者:大佬喝可樂丶  
這篇文章主要介紹了mybatis使用foreach踩坑及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

mybatis使用foreach踩坑記錄

在使用fireach是最關鍵的是collection屬性

dao層

單參數List和多參數的list

    /*通過表名(日期)查詢*/
    List<WagesInfoVo> selectWagesBySheet(List<String> sheetNameList);

    /*通過用戶名+表名(日期)查詢*/
    List<WagesInfoVo> selectByPerson(@Param("personNumber") String personNumber,
                                     @Param("sheetNameList") List<String> sheetNameList);

xml文件中foreach屬性的選擇

  • 單參數的collection=“list”
  • 多參數的collection=“sheetNameList”,sheetNameList為傳入的參數
 <select id="selectWagesBySheet" parameterType="java.lang.String"
            resultType="com.zl.wagesmanage.vo.wages.WagesInfoVo">
        select person_number as personNumber,user_name as userName,
        account_number as accountNumber,wage as wage,other_money as otherMoney,reward as reward,
        should as should,old as old,medical as medical,lose_job as loseJob,trade_union as tradeUnion,
        housing_fund as housingFund,take_off as takeOff,total as total,sheet_name as sheetName
        from tt_excel_wages
        where sheet_name in
        <foreach collection="list" index="index" item="sheetNameList"
                 open="(" separator="," close=")">
            #{sheetNameList}
        </foreach>
    </select>

    <select id="selectByPerson" parameterType="java.lang.String"
            resultType="com.zl.wagesmanage.vo.wages.WagesInfoVo">
        select person_number as personNumber,user_name as userName,
        account_number as accountNumber,wage as wage,other_money as otherMoney,reward as reward,
        should as should,old as old,medical as medical,lose_job as loseJob,trade_union as tradeUnion,
        housing_fund as housingFund,take_off as takeOff,total as total,sheet_name as sheetName
        from tt_excel_wages
        where person_number=#{personNumber}
        and sheet_name in
        <foreach collection="sheetNameList" index="index" item="sheetNameList"
                 open="(" separator="," close=")">
            #{sheetNameList}
        </foreach>
    </select>

controller層傳參說明

這里我都是使用@RequestParam進行傳參,列舉了get請求和post請求

    /*通過excel的表名進行查詢*/
    @GetMapping(value = "getWages")
    @ResponseBody
    public ResponseVO getWages(@RequestParam("sheetNames")List<String> sheetNames){
        try {
            WagesRequestVo wagesRequestVo =new WagesRequestVo();
            //獲取數據
            List<WagesInfoVo> wagesInfoVos = wagesServer.getWagesBySheet(sheetNames);

            wagesRequestVo.setWagesInfoVoList(wagesInfoVos);
            if (wagesInfoVos==null){
                return ResponseVO.appFail("查詢失敗");
            }
            return ResponseVO.success(wagesRequestVo);
        }catch (Exception e){
            return ResponseVO.serviceFail(e.getMessage());
        }
    }

    /*通過用戶名和表名進行查詢*/
    @PostMapping("getWagesByNumber")
    @ResponseBody
    public  ResponseVO getWagesByNumber(@RequestParam("personNumber")String personNumber,
                                        @RequestParam("sheetName[]")List<String> sheetName){
        try {
            WagesRequestVo wagesRequestVo =new WagesRequestVo();
            //獲取數據
            List<WagesInfoVo> wagesInfoVos = wagesServer.getWagesByPerson(personNumber,sheetName);

            wagesRequestVo.setWagesInfoVoList(wagesInfoVos);
            if (wagesInfoVos==null){
                return ResponseVO.appFail("查詢失敗");
            }
            return ResponseVO.success(wagesRequestVo);
        }catch (Exception e){
            return ResponseVO.serviceFail(e.getMessage());
        }
    }

postman截圖

  • get請求傳參方式:

  • post傳參方式:

總結

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

相關文章

  • MyBatis-Plus 修改和添加自動填充時間方式

    MyBatis-Plus 修改和添加自動填充時間方式

    這篇文章主要介紹了MyBatis-Plus 修改和添加自動填充時間方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Java壓縮集合的三種方法

    Java壓縮集合的三種方法

    這篇文章主要介紹了Java壓縮集合的三種方法,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2021-01-01
  • 一場由Java中Integer引發(fā)的踩坑實戰(zhàn)

    一場由Java中Integer引發(fā)的踩坑實戰(zhàn)

    Java中的數據類型分為基本數據類型和復雜數據類型int是前者而integer是后者(也就是一個類),下面這篇文章主要給大家介紹了關于由Java中Integer引發(fā)的踩坑實戰(zhàn),需要的朋友可以參考下
    2022-11-11
  • zookeeper概述圖文詳解

    zookeeper概述圖文詳解

    今天小編就為大家分享一篇關于Zookeeper概述圖文詳解,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • Java畢業(yè)設計實戰(zhàn)之在線高中考試系統(tǒng)的實現(xiàn)

    Java畢業(yè)設計實戰(zhàn)之在線高中考試系統(tǒng)的實現(xiàn)

    這是一個使用了java+SSM+Jsp+Mysql+Maven開發(fā)的在線高中考試系統(tǒng),是一個畢業(yè)設計的實戰(zhàn)練習,具有考試系統(tǒng)該有的所有功能,感興趣的朋友快來看看吧
    2022-02-02
  • java8如何用Stream查List對象某屬性是否有重復

    java8如何用Stream查List對象某屬性是否有重復

    這篇文章主要介紹了java8如何用Stream查List對象某屬性是否有重復的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • SpringBoot 開發(fā)提速神器 Lombok+MybatisPlus+SwaggerUI

    SpringBoot 開發(fā)提速神器 Lombok+MybatisPlus+SwaggerUI

    這篇文章主要介紹了SpringBoot 開發(fā)提速神器 Lombok+MybatisPlus+SwaggerUI,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • myBatis使用@GeneratedValue(generator?=?“...“,?strategy?=?...)注解

    myBatis使用@GeneratedValue(generator?=?“...“,?strategy?=?

    這篇文章主要介紹了myBatis使用@GeneratedValue(generator?=?“...“,?strategy?=?...)注解問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Spring源碼解析 Bean的實例化

    Spring源碼解析 Bean的實例化

    這篇文章主要介紹了Spring源碼解析 Bean的實例化,文章圍繞主題展開詳細的內容介紹沒具有一定的參考價值,需要的小伙伴可以參考一下
    2022-07-07
  • Flowable數據庫表分類及數據字典解析

    Flowable數據庫表分類及數據字典解析

    這篇文章主要介紹了Flowable數據庫表分類及數據字典解析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11

最新評論

镶黄旗| 独山县| 亳州市| 泸州市| 正定县| 龙胜| 上杭县| 古交市| 宁陕县| 麦盖提县| 永靖县| 兰坪| 安国市| 安岳县| 南木林县| 花莲县| 怀化市| 贺兰县| 馆陶县| 乐都县| 永和县| 柳林县| 屯门区| 交口县| 镇远县| 隆昌县| 广东省| 平和县| 通州市| 镇远县| 万全县| 香港| 房山区| 扶绥县| 鹿邑县| 长治市| 成武县| 调兵山市| 平阴县| 河北省| 齐齐哈尔市|