• mybatisforeach循环,传入多个参数


    上代码:

    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

    /**
         * 描述:根据工种查询列表
         * @param jobCategorys
         * @return
         */
        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>
  • 相关阅读:
    详解应对平台高并发的分布式调度框架TBSchedule
    利用httpd配置虚拟目录创建下载站点
    在centos7下用http搭建配置svn服务
    centos7/rhel7下配置PXE+Kickstart自动安装linux系统
    centos7破解安装confluence5.9.11
    centos7破解安装jira6.3.6(含Agile)
    mysql5.6做单向主从复制Replication
    解决忘记mysql中的root用户密码问题
    centos7安装mysql5.6(rpm包安装)
    centos7/RHEL7最小化系统安装gnome图形界面
  • 原文地址:https://www.cnblogs.com/zrui-xyu/p/5166252.html
Copyright © 2020-2023  润新知