实现MyBatis批量查询
Service
public List<DeviceBean> getDeviceList(Map<String, Object> parameter);
ServiceImpl
@Override
public Map<String, DeviceBean> getDeviceCollectStateIdByBean(Map<String, Object> parameter) {
logger.info("DeviceServiceImpl{}==>getDeviceCollectStateIdByBean()");
return deviceDao.getDeviceCollectStateIdByBean(parameter);
}
Dao
public List<DeviceBean> getDeviceList(Map<String, Object> parameter);
DaoImpl
@Override
public List<DeviceBean> getDeviceList(Map<String, Object> parameter) {
logger.info("DeviceDaoImpl{}==>getDeviceList()");
return getWriteSession().selectList(sqlId("getDeviceList"),parameter);
}
Mapper
<select id="getDeviceList" resultType="com.yjkj.zzx.system.bean.DeviceBean" parameterType="map" >
select
d.id as id, d.group_id as groupId,d.farm_id as farmId, d.house_id as houseId, d.code
from t_device d
WHERE d.del_flag = '0' and d.code in
<foreach item="item" index="index" collection="codelist" open="(" separator="," close=")">
#{item}
</foreach>
</select>
测试打印结果
List<String> codeList =new ArrayList<String>();
codeList.add("b827ebee9322");
codeList.add("111");
codeList.add("1111");
Map<String,Object> paramap=new HashMap<String,Object>();
paramap.put("codelist", codeList);
List<DeviceBean> res11 = deviceService.getDeviceList(paramap);
System.out.println(res11);
实现MyBatis批量查询的更多相关文章
- myBatis批量查询操作,xml中使用foreach案例
使用场景:有一个订单表,实体类为OrderBase.java,订单有个状态为status值可能为"1,2,3,4,5,6",现在需要查询状态为"2,3,4"的订 ...
- mybatis批量查询引发的血案
mybatis提供了foreach语法用于所谓的批量查询,使用方式如下: ①.定义接口 /** * 批量获取任务id列表对应的任务名称 * @param taskIdList:任务id列表 * @re ...
- mybatis 批量查询参数语句
在mybatis 传入数组在sql语句中进行查询 1.传入一个map集合,已或者的形式拼接数组循环 <select id="selectUserByList" parame ...
- Mybatis批处理(批量查询,更新,插入)
mybatis批量查询 注意这里的 in 和 <trim prefix="(" suffix=")"> 以及 in ( )的三种方式的(例1(推 ...
- Sql批量添加,批量查询,批量删除,批量修改。mybatis都有对应标签
Sql批量添加,批量查询,批量删除,批量修改.mybatis都有对应标签
- mybatis之批量查询
关于MyBatis批量更新和添加,参考我的如下文章即可:MyBatis的批量更新实例 MyBatis的批量添加实例 另外不管是批量的新增.删除.修改.查询也好,还是单个新增.删除.修改查询也罢.都会用 ...
- MyBatis批量增删改查操作
前文我们介绍了MyBatis基本的增删该查操作,本文介绍批量的增删改查操作.前文地址:http://blog.csdn.net/mahoking/article/details/43673741 ...
- 160421、MyBatis批量插入数据
在程序中封装了一个List集合对象,然后需要把该集合中的实体插入到数据库中,由于项目使用了Spring+MyBatis的配置,所以打算使用MyBatis批量插入,由于之前没用过批量插入,在网上找了一些 ...
- oracle+mybatis批量插入踩坑记
最近在项目中需要使用oracle+mybatis批量插入数据,因为自增主键,遇到问题,现记录如下: 一.常用的两种sql写法报错 1.insert ... values ... <insert ...
随机推荐
- Nikitosh 和异或(trie树)
题目: #10051. 「一本通 2.3 例 3」Nikitosh 和异或 解析: 首先我们知道一个性质\(x\oplus x=0\) 我们要求\[\bigoplus_{i = l}^ra_i\]的话 ...
- 05、MySQL—字符集
1.字符编码概念 字符(Character)是各种文字和符号的总称,包括各国家文字.标点符号.图形符号.数字等. 在计算机中所看到的任何内容都是字符构成的. 字符编码(character code)是 ...
- 【转载】C#中使用double.TryParse方法将字符串转换为double类型
在C#编程过程中,将字符串string转换为double类型过程中,时常使用double.Parse方法,但double.Parse在无法转换的时候,会抛出程序异常,其实还有个double.TryPa ...
- jq1.6版本前后,attr()和prop()的区别,来自慕课网的回答
jQuery 1.6之前 ,.attr()方法在取某些 attribute 的值时,会返回 property 的值,这就导致了结果的不一致.从 jQuery 1.6 开始, .prop()方法 方法返 ...
- synchronized关键字的使用
synchronized关键字是java并发编程中常使用的同步锁,用于锁住方法或者代码块,锁代码块时可以是synchronized(this){}.synchronized(Object){}.syn ...
- 【Docker】iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8480 -j DNAT --to-destination 172.17.0.2:80 ! -i docker0: iptables: No chain/target/match by that name
启动容器的时候,出现如下错误: Error response / --dport -j DNAT --to-destination ! -i docker0: iptables: No chain/t ...
- MongoDB 分片的原理、搭建、应用 (转)
一.概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程.将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处理更大的负载.基本思想就是将集合切成小块,这 ...
- ES6--不定参数
<一>,在讨论ES6的不定参数之前,我们先一起回顾一下ECMAScript5的无名参数. 早先,javascript提供arguments对象检查函数的所有参数,从而不必定义每一个要用的参 ...
- robotframework+Python3.7 接口自动化测试
具体的测试用例,password,channel,resultCode传给接口描述 集成了一些常见的测试接口方法 1. Get请求下,
- jquery 子元素 后代元素 兄弟元素 相邻元素
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-type" content ...