广告
返回顶部
首页 > 资讯 > 精选 >MyBatis怎么进行双重foreach循环
  • 482
分享到

MyBatis怎么进行双重foreach循环

2023-06-29 02:06:49 482人浏览 独家记忆
摘要

这篇文章主要介绍mybatis怎么进行双重foreach循环,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!进行双重foreach循环mapname是一个Map<String,Map<String,Obje

这篇文章主要介绍mybatis怎么进行双重foreach循环,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

进行双重foreach循环

mapname是一个Map<String,Map<String,Object>> 对象

<foreach collection="mapname" index="key1" item="value1" separator=",">    <foreach collection="value1" index="key2" item="value2" separator=",">        #{key1},        #{key2},        #{value2}    </foreach></foreach>

使用场景

比如说一个付款人下面对应的运单的金额,那么key1就是付款人编号,key2是运单编号,value2是分摊的金额 

mybatis foreach循环,传入多个参数

上代码

controller:

@RequestMapping(value = "/findPage", method = RequestMethod.POST)    @ResponseBody    public Object findPage(@RequestParam(required=false) String jobCateGory,@RequestParam(required=false) String ids,@RequestParam(required=false) String cities) {        try {            List<Integer> listJob = new ArrayList<Integer>();            List<Integer> listIds = new ArrayList<Integer>();            List<String> listCities = new ArrayList<String>();            //按照城市名称和工种查询            if(StringUtils.isNotBlank(jobCategory) && StringUtils.isNotBlank(cities)){                String[] temp = jobCategory.split(",");                String[] cityTemp = cities.split(",");                for(int i=0;i<temp.length;i++){                    listJob.add(Integer.valueOf(temp[i]));                }                for(int i=0;i<cityTemp.length;i++){                    listCities.add(cityTemp[i]);                }                List<WEBsitesJob> list = jobService.findPage(listJob, listIds, listCities);                return new ExtGridReturn(list.size(), list);            }            //按照工种查询            if(StringUtils.isNotBlank(jobCategory)){                String[] temp = jobCategory.split(",");                for(int i=0;i<temp.length;i++){                    listJob.add(Integer.valueOf(temp[i]));                }            }            //按照职位名称查询            if(StringUtils.isNotBlank(ids)){                String[] temp = ids.split(",");                for(int i=0;i<temp.length;i++){                    listIds.add(Integer.valueOf(temp[i]));                }            }            //按照城市查询            if(StringUtils.isNotBlank(cities)){                String[] temp = cities.split(",");                for(int i=0;i<temp.length;i++){                    listCities.add(temp[i]);                }            }            List<WebsitesJob> list = jobService.findPage(listJob, listIds, listCities);            return new ExtGridReturn(list.size(), list);        } catch (Exception e) {            LOGGER.error("分页获取信息出错", e);            return new ExceptionReturn(e);        }    }

mapper

    List<WebsitesJob> findPage(@Param("jobCategorys") List<Integer> jobCategorys,@Param("ids") List<Integer> ids,@Param("workPlace") List<String> workPlace);

xml

<!-- 前台查询列表 -->   <select id="findPage" resultType="cn.edu.hbcf.plugin.websites.pojo.WebsitesJob">           select n.ID id,              n.NAME name,              n.WORKPLACE workPlace,              n.JOBCATEGORY jobCategory,              n.SALARY salary,              n.RESPONSIBILITIES responsibilities,              n.REQUIREMENTS requirements,              n.ISHOT isHot,              n.UPDATEDATE updateDate,              n.UPDATEUSER updateUser,              u.real_name updateName         from websites_job n         left join base_users u on n.updateUser = u.account         <where>             <if test="jobCategorys.size()!=0">                 or    n.jobCategory in                   <foreach collection="jobCategorys" index="index" item="item" open="(" separator="," close=")">                    #{item}                </foreach>            </if>            <if test="ids.size()!=0">                or n.id in                   <foreach collection="ids" item="item" index="index" open="(" separator="," close=")">                    #{item}                </foreach>             </if>             <if test="workPlace.size()!=0">                or n.WORKPLACE in                   <foreach collection="workPlace" item="item" index="index" open="(" separator="," close=")">                    #{item}                </foreach>             </if>         </where>         order by n.ISHOT,n.ID desc   </select>

以上是“MyBatis怎么进行双重foreach循环”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网精选频道!

--结束END--

本文标题: MyBatis怎么进行双重foreach循环

本文链接: https://www.lsjlt.com/news/322045.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MyBatis怎么进行双重foreach循环
    这篇文章主要介绍MyBatis怎么进行双重foreach循环,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!进行双重foreach循环mapname是一个Map<String,Map<String,Obje...
    99+
    2023-06-29
  • MyBatis如何进行双重foreach循环
    目录进行双重foreach循环使用场景mybatis foreach循环,传入多个参数上代码进行双重foreach循环 mapname是一个Map<String,Map<...
    99+
    2022-11-13
  • MyBatis怎么实现批量插入数据,多重forEach循环
    今天小编给大家分享一下MyBatis怎么实现批量插入数据,多重forEach循环的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧...
    99+
    2023-06-29
  • 怎么在Java8中利用forEach语句对List和Map进行循环
    本文章向大家介绍怎么在Java8中利用forEach语句对List和Map进行循环的基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。Java是什么Java是一门面向对象编程语言,可以编写桌面应用程序、Web应用程序...
    99+
    2023-06-06
  • Vue.js怎么对数组和对象进行循环
    本文小编为大家详细介绍“Vue.js怎么对数组和对象进行循环”,内容详细,步骤清晰,细节处理妥当,希望这篇“Vue.js怎么对数组和对象进行循环”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。v-forv-for ...
    99+
    2023-07-04
  • 怎么在Linux中对shell数组进行循环
    这篇文章给大家介绍怎么在Linux中对shell数组进行循环,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。shell数组循环测试shell数组,循环的例子: arr=("a" "...
    99+
    2023-06-09
  • 怎么在Python中利用for循环对字典进行迭代
    今天就跟大家聊聊有关怎么在Python中利用for循环对字典进行迭代,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。python的五大特点是什么python的五大特点:1.简单易学,开...
    99+
    2023-06-14
  • 通过shell脚本怎么循环进入目录执行命令
    通过shell脚本怎么循环进入目录执行命令?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。相对应的目录结构如下;laravel框架的目录结构为:/webserver/aaa/ww...
    99+
    2023-06-09
  • angular4中*ngFor不能对返回来的对象进行循环怎么办
    小编给大家分享一下angular4中*ngFor不能对返回来的对象进行循环怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!解...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作