PersonDaoImp如下:
/**
* 删除性别为man,年龄为 11,12 的Person记录
*/
public
int
deletePerson(Map<String, Object> map) {
List<Person> personList
=new
ArrayList<Person>();
Person p1=new
Person(11);
person p2=new
Person(12);
personList.add(p1);
personList.add(p2);
map.put("personList"
, personList
);
map.put("sex"
,'man');
return
getSqlMapClientTemplate().delete(
"person.deletePerson"
, map);
}
person.xml如下:
<!-- 删除相应的person记录
-->
<
delete
id
="
deletePerson
"
parameterClass
="map"
>
delete from 表名 where sex=#sex#
<
iterate
prepend
="and
"
property
="
personList
"
open
="("
close
=")"
conjunction
="or"
>
age=$personList[]
.age
$
</
iterate
>
</
delete
>
输出sql如下:
delete from 表名 where sex='man' and
(
age =11
or
age=12
)
当然你也可以这么写:
person.xml如下:
<!-- 删除相应的person记录
-->
<
delete
id
="
deletePerson
"
parameterClass
="map"
>
delete from 表名 where sex=#sex# and age in
<
iterate
property
="
personList
"
open
="("
close
=")"
conjunction
=","
>
$personList[]
.age
$
</
iterate
>
</
delete
>
输出sql如下:
delete from 表名 where sex='man' and
age in (
11
,
12
)
最后Person代码大致如下:
public
class
Person{
public
Person(int
age){
this.age=age;
}
/**
* 年龄
*/
private
int age;
/**
* 性别
*/
private
String sex;
//get/set方法略
...
}//end of Person
本文出自 “sunfish 翻车鱼
” 博客,请务必保留此出处http://sunfish.blog.51cto.com/417500/108315
分享到:
相关推荐
ibatise中关于iterate的用法的例子
NULL 博文链接:https://duqiangcise.iteye.com/blog/286764
ibatis入门与ibatis迭代的用法
ibatis批量处理操作实现,以及sping中需要注意点
ibatis3.0中in的用法ibatis3.0中in的用法ibatis3.0中in的用法ibatis3.0中in的用法
iBATIS缓存的使用方法
ibatis学习 ibatis总结 ibatis ibatis ibatis
iBatis Web用法实例工程
比较全面的介绍了Ibatis,是入门的比较经典的文档
学会ibatis 中sqlMap配置
ibatis官方中文文档.rar包含ibatis官方中文文档及使用说明
ibatis: dynamic 使用方法
ibatis 拼接字符串
ibatis资料ibatis资料ibatis资料ibatis资料ibatis资料ibatis资料ibatis资料ibatis资料ibatis资料
ibatis2.0中文API ibatis2.0中文API ibatis2.0中文API 一对多 多对一详解,属性设置详解,解决方案详解,ibatis2.0核心API
ibatis 乱码解决 ibatis乱码 gbk iso_8859_1 乱码
ibatis demo,ibatis例子,ibatis示例
ibatis.net Tutorial ibatis.net 指导 用法
iBATIS 级联iBATIS 级联iBATIS 级联
ibatis 中文手册,介绍了ibatis map sql的重要特性