mybatis foreach的用法简介说明

MyBatis简介:

   MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。

iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)

    MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录 

下文笔者讲述mybatis中foreach用法简介说明,如下所示

mybatis中foreach功能说明:
   用于将list集合按照一定的规则,拼接为一个sql脚本
   然后放入到数据库中运行

例:mapper文件

<select id="selectInfoIn" resultType="domain.java265.Post">
SELECT *
FROM Post  P
WHERE ID in
<foreach item="item" index="index" collection="list"
open="(" separator="," close=")">
#{item}
</foreach>
</select>
这里的collection可以是:array,list,map,set,这里试验一下array:

例2: 一次性删除多个数据

<delete id="deletePost">
delete from t_Post where id in
<foreach collection="array" item="id" open="(" close=")" separator=",">
            #{id}
</foreach>
</delete>
SqlSession session=null;
try {
session=myBatisUtil.getSqlSession();
Integer[] ids = new Integer[]{,10,22,88};
session.delete("deletePost",ids);
    session.commit();
} catch (Exception e) {
    e.printStackTrace();
    session.rollback();
    }finally{
    session.close();
 }
正文到此结束
评论插件初始化中...
Loading...