MyBatis In的使用
来源:互联网 发布:淘宝高仿潮牌店铺 编辑:程序博客网 时间:2024/05/23 22:55
项目中where条件中用到in,我理所当然的拼了个字符串传进去了,郁闷的是程序一直运行正常,测试case一直没有覆盖到这种情况,今天发现了,原来是程序的问题,我以为mybatis有bug呢。。。。。故记下此问题,留作笔记。
1.解决方法(多参数)
Map.xml
<select id="getEntityList" resultType="App" parameterType="map">select * from t_app where status=#{status}<if test="flag!=null ">and id not in<foreach item="item" index="index" collection="ids" open="("separator="," close=")">#{item}</foreach></if></select>传入的参数为Map<String,Object>
数据:status:1
ids:int[]{101,103,61,75}
2.一个参数
- a.如果参数的类型是List, 则在使用时,collection属性要必须指定为 list
findByIds(List<Long> ids)
<select id="findByIdsMap" resultMap="BaseResultMap"> Select <include refid="Base_Column_List" /> from jria where ID in <foreach item="item" index="index" collection="list" open="(" separator="," close=")"> #{item} </foreach> </select>
- b.如果参数的类型是Array,则在使用时,collection属性要必须指定为 array
findByIds(Long[] ids)
<select id="findByIdsMap" resultMap="BaseResultMap"> select <include refid="Base_Column_List" /> from jria where ID in <foreach item="item" index="index" collection="array" open="(" separator="," close=")"> #{item} </foreach> </select>
参考:http://www.blogjava.net/xmatthew/archive/2011/08/31/355879.html 推荐
0 0
- MyBatis In的使用
- MyBatis In的使用
- MyBatis In的使用
- MyBatis In的使用
- MyBatis 中in的使用
- mybatis in的使用问题
- mybatis 中in的使用
- Mybatis中sql in的使用
- mybatis中 find_in_set 与in的使用
- mybatis使用in心得
- mybatis使用in查询
- mybatis实战教程(mybatis in action)之九:mybatis 代码生成工具的使用
- mybatis实战教程(mybatis in action)之九:mybatis 代码生成工具的使用
- mybatis的in
- MyBatis的in操作
- mybatis的in查询
- 【MyBatis】在MyBatis中使用in语句
- mybatis中使用in查询时的注意事项
- C++堆、栈、自由存储区、全局/静态存储区和常量存储区
- Selenium_selenium-webdriver(python) (十一) -- 控制滚动条到底部
- jQuery获取及设置单选框、多选框、文本框内容
- 数据分析这点事
- 在构造方法中调用当前类的构造方法
- MyBatis In的使用
- 收藏JavaScript技巧文章
- Throwable、Error和Exception
- Qt 的 signal与slot底层实现机制详解
- cfx使用https配置
- 列存储介绍
- ora-00020:maximum number of processes 不能停机怎么办
- 床底有人
- >LINK : fatal error LNK1000: Internal error during IncrBuildImage