<select id="selectQuickConsultDoctorList" resultMap="BaseResultMap" parameterType="java.util.List">
SELECT
doc.*
FROM
user_doctor doc
LEFT JOIN bas_professional pro ON pro. NAME = doc.profession_field
WHERE
doc.`approved` = 2
AND (doc.consultprice = 0 or doc.consulttoll = 3)
<if test="list != null">
AND doc.doctorID in
<foreach collection="list" open="(" close=")" separator="," item="doctorid">
#{doctorid,jdbcType=INTEGER}
</foreach>
</if>
</select>
List<UserDoctor> selectQuickConsultDoctorList(List<Integer> paramList);

结果:

SELECT
doc.*
FROM
user_doctor doc
LEFT JOIN bas_professional pro ON pro. NAME = doc.profession_field
WHERE
doc.`approved` = 2
AND (
doc.consultprice = 0
OR doc.consulttoll = 3
)
AND doc.doctorID IN (?, ?, ?, ?, ?, ?, ?, ?, ?)

补充:diseaseIds : "8,19"

    @Override
public List<Map<String,String>> getMedicinal(String diseaseIds ,Integer userId) {
UserSession session = usrUserService.getUserSession(userId);
Map<String,Object> paramMap = new HashMap<String,Object>();
paramMap.put("diseaseIds", diseaseIds.split(","));
paramMap.put("hospitalId", String.valueOf(session.getHosId()));
List<Map<String,String>> list = basMedicinalMapper.getMedicinal(paramMap);
return list;
}
    List<Map<String,String>> getMedicinal(Map<String,Object> paramMap);
    WHERE
mdl.disease_id in
<foreach collection="diseaseIds" open="(" close=")" item="item" separator=",">
#{item,jdbcType=INTEGER}
</foreach>
WHERE mdl.disease_id in ( ? , ? )
Parameters: 8(String), 19(String)

mybaits foreach的更多相关文章

  1. mybaits入门

    1.回顾jdbc开发 orm概述 orm是一种解决持久层对象关系映射的规则,而不是一种具体技术.jdbc/dbutils/springdao,hibernate/springorm,mybaits同属 ...

  2. 1、SpringMVC+MyBaits实现查询所有

    1.创建如下所示项目 2.在src下的com.entity包下创建 Emp.java package com.entity; /** * * @author Holly老师 * */ public c ...

  3. 讲解mybaits的标签语法

    前言:mybatis作为一个持久层的java框架,高度封装了jdbc原始代码,它拥有比Hiberante更便捷.更直接的sql语法和sql灵活配置的特性,比如简单的一个自动映射对象就大大减少了我们的代 ...

  4. Mybaits 源码解析 (三)----- Mapper接口底层原理(为什么Mapper不用写实现类就能访问到数据库?)

    上一篇我们讲解到mapperElement方法用来解析mapper,我们这篇文章具体来看看mapper.xml的解析过程 mappers配置方式 mappers 标签下有许多 mapper 标签,每一 ...

  5. mybaits实现oracle批量新增数据,回填主键

    项目有需求,百度了很久,反正他们说的方法,我都没成功,我也不知道是不是我写代码的姿势不正确,没办法只能自己想法子了 我们这个项目用到了通过Mapper,通用Mapper里通过OracleProvide ...

  6. coding++:mybatis update foreach (SQL循环)批量更新

    今天要做批量更新的业务,采用 mybaits 的 foreach 动态语句,遇到一些问题做下记录. 参考示例(1): <update id="" parameterType= ...

  7. 先说IEnumerable,我们每天用的foreach你真的懂它吗?

    我们先思考几个问题: 为什么在foreach中不能修改item的值? 要实现foreach需要满足什么条件? 为什么Linq to Object中要返回IEnumerable? 接下来,先开始我们的正 ...

  8. 了解PHP中的Array数组和foreach

    1. 了解数组 PHP 中的数组实际上是一个有序映射.映射是一种把 values 关联到 keys 的类型.详细的解释可参见:PHP.net中的Array数组    . 2.例子:一般的数组 这里,我 ...

  9. 浅谈JavaScript中forEach与each

    forEach是ES5中操作数组的一种方法,主要功能是遍历数组,例如: var arr = [1,2,3,4]; arr.forEach(alert); 等价于: var arr = [1, 2, 3 ...

随机推荐

  1. node 中 npm报错 Error: ENOENT, stat 'C:\Users\Administrator\AppData\Roaming\npm'

    今天在看node书本时,安装express,看看里面的包.没想到出现这样一种情况. 报错了.后来思考了一下,可能是修改了node的默认安装路径.于是准备在出错的路径下建一个npm文件夹. 注意,有个时 ...

  2. JavaScript 中的函数介绍

    简而言之函数只不过是一组执行某个操作的语句.函数可能会有一些输入参数(在函数体中使用),并在执行后返回值. JavaScript函数也具有这些特性,但它们不仅仅是常规函数.JavaScript函数是对 ...

  3. SVN目录结构

    整理了一下svn目录结构,如下: 项目名称 ----branches    软件产品的迭代开发版本 ----tags        软件产品经过完整测试的历史稳定版本,已部署在客户机器上使用的 --- ...

  4. linux中awk工具

    awk sed以行为单位处理文件,awk比sed强的地方在于不仅能以行为单位还能以列为单位处理文件.awk缺省的行分隔符是换行,缺省的列分隔符是连续的空格和Tab,但是行分隔符和列分隔符都可以自定义, ...

  5. C++何时使用引用

  6. C#Question:“XXX”的重载均与“System.Threading.WaitCallback”不匹配。

    public static class ThreadPool // 提供一个线程池,该线程池可用于执行任务.发送工作项.处理异步 I/O.代表其他线程等待以及处理计时器. { [SecuritySaf ...

  7. 「小程序JAVA实战」开发用户redis-session(40)

    转自:https://idig8.com/2018/09/05/xiaochengxujavashizhankaifayonghuredis-session39/ 接下来我们需要在我们的项目里面配置下 ...

  8. 【原】Coursera—Andrew Ng机器学习—Week 9 习题—异常检测

    [1]异常检测 [2]高斯分布 [3]高斯分布 [4] 异常检测 [5]特征选择 [6] [7]多变量高斯分布 Answer: ACD B 错误.需要矩阵Σ可逆,则要求m>n  测验1 Answ ...

  9. Invalid command 'Header', perhaps misspelled or defined by a module not included in the server configuration

    在Apache的配置文件 httpd.conf 中开启  LoadModule headers_module modules/mod_headers.so  即可解决这个问题.

  10. 201671010127 2016-2017-18 Java期末总结

    通过本学期Java课程的学习,我对于面向对象的编程语言有了进一步的了解.首先面向对象编程的特点是抽象.封装.继承.多态.由于已经学过c语言,所以对Java的学习实际上是从第四章对向与类开始的,然后学习 ...