`
xiaoxuan_blog
  • 浏览: 29850 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

myBatis批量添加,修改和删除

阅读更多

1、批量添加元素session.insert(String string,Object o)

复制代码
public void batchInsertStudent(){
    List<Student> ls = new ArrayList<Student>();
    for(int i = 5;i < 8;i++){
        Student student = new Student();
        student.setId(i);
        student.setName("maoyuanjun" + i);
        student.setSex("man" + i);
        student.setTel("tel" + i);
        student.setAddress("浙江省" + i);
        ls.add(student);
    }
    SqlSession session = SessionFactoryUtil.getSqlSessionFactory().openSession();
    session.insert("mybatisdemo.domain.Student.batchInsertStudent", ls);
    session.commit();
    session.close();
}

<insert id="batchInsertStudent" parameterType="java.util.List">
    INSERT INTO STUDENT (id,name,sex,tel,address)
    VALUES 
    <foreach collection="list" item="item" index="index" separator="," >
        (#{item.id},#{item.name},#{item.sex},#{item.tel},#{item.address})
    </foreach>
</insert>
复制代码

 

2、批量修改session. insert (String string,Object o)

复制代码
实例1:
public void batchUpdateStudent(){
    List<Integer> ls = new ArrayList<Integer>();
    for(int i = 2;i < 8;i++){
        ls.add(i);
    }
    SqlSession session = SessionFactoryUtil.getSqlSessionFactory().openSession();
    session.insert("mybatisdemo.domain.Student.batchUpdateStudent",ls);
    session.commit();
    session.close();
}
<update id="batchUpdateStudent" parameterType="java.util.List">
    UPDATE STUDENT SET name = "5566" WHERE id IN
    <foreach collection="list" item="item" index="index" open="(" separator="," close=")" >
        #{item}
    </foreach>
</update>

实例2:
public void batchUpdateStudentWithMap(){
    List<Integer> ls = new ArrayList<Integer>();
    for(int i = 2;i < 8;i++){
        ls.add(i);
    }
    Map<String,Object> map = new HashMap<String,Object>();
    map.put("idList", ls);
    map.put("name", "mmao789");
    SqlSession session = SessionFactoryUtil.getSqlSessionFactory().openSession();
    session.insert("mybatisdemo.domain.Student.batchUpdateStudentWithMap",map);
    session.commit();
    session.close();
}
<update id="batchUpdateStudentWithMap" parameterType="java.util.Map" >
    UPDATE STUDENT SET name = #{name} WHERE id IN 
    <foreach collection="idList" index="index" item="item" open="(" separator="," close=")"> 
        #{item} 
    </foreach>
</update>
复制代码

3、批量删除session.delete(String string,Object o)

复制代码
public void batchDeleteStudent(){
    List<Integer> ls = new ArrayList<Integer>();
    for(int i = 4;i < 8;i++){
        ls.add(i);
    }
    SqlSession session = SessionFactoryUtil.getSqlSessionFactory().openSession();
    session.delete("mybatisdemo.domain.Student.batchDeleteStudent",ls);
    session.commit();
    session.close();
}
<delete id="batchDeleteStudent" parameterType="java.util.List">
    DELETE FROM STUDENT WHERE id IN
    <foreach collection="list" index="index" item="item" open="(" separator="," close=")"> 
        #{item} 
    </foreach>
</delete>
复制代码
ref:http://www.cnblogs.com/wuyifu/p/3745258.html
分享到:
评论

相关推荐

    MyBatis批量添加、修改和删除

    以下是对 MyBatis 批量添加、修改和删除的详细解释。 1. **批量添加** 批量添加通常通过 `session.insert()` 方法实现,该方法接受一个 SQL 映射语句 ID 和一个包含待插入对象的集合。在给出的示例中,创建了一个 `...

    mybatis数据操作(增删改查+批量操作)

    在"mybatis数据操作(增删改查+批量操作)"这个主题中,我们将深入探讨如何利用MyBatis进行基本的数据操作,包括插入(Insert)、删除(Delete)、更新(Update)和查询(Select),以及如何执行批量操作。...

    Mybatis批量修改的操作代码

    Mybatis批量修改操作代码详解 Mybatis是一款流行的持久层框架,提供了批量修改操作的功能。本文将详细介绍Mybatis批量修改的操作代码,包括批量修改的基本语法、参数说明、trim标签的使用等。 一、基本语法 ...

    批量添加、修改、删除sql语句.docx

    MySQL批量添加、修改、删除SQL语句详解 ...这篇文章详细介绍了MySQL批量添加、修改、删除SQL语句,并提供了使用MyBatis框架实现批量操作的示例代码。这些知识点对于实际开发中批量操作数据非常有用。

    MyBatis Plus全套学习资料(带源码和笔记)

    MyBatis Plus是一个基于MyBatis框架的扩展工具,它旨在简化常见的MyBatis操作,如插入、更新、删除和查询。这套学习资料包含了MyBatis Plus的源码和笔记,是深入理解并掌握该框架的宝贵资源。下面将详细阐述MyBatis ...

    Mybatis中使用updateBatch进行批量更新

    在上面的代码中,使用 `&lt;trim&gt;` 语法来实现批量更新,`&lt;trim&gt;` 语法可以自动添加或删除SQL语句中不需要的部分,从而提高了代码的可读性和维护性。 总结 在Mybatis中,可以使用updateBatch方法来进行批量更新,以...

    mybatis-plus 实践及架构原理

    - 自动完成单表CRUD操作(包括简单的单个对象插入、查询、更新、删除操作和批量操作)。 - 提供分页插件,支持自动分页和自定义SQL分页查询。 - 支持Spring环境下根据不同环境加载不同的配置。 - 提供代码自动...

    ssm项目实现批量新增(批量 修改,删除都可以).docx

    本篇文章将详细介绍如何在SSM项目中实现批量新增,同时也适用于批量修改和删除操作。 首先,我们需要在前端JavaScript部分声明一个数组,用于存储待批量处理的数据。可以通过push方法动态添加元素,无论是预先定义...

    mybatis-plus源码(mybatis-plus-3.5.1.zip)

    3. **自动化填充字段**:支持实体类字段的自动填充,如创建时间、修改时间和乐观锁版本号等,只需要在实体类字段上添加注解即可。 4. **批量插入与更新**:MyBatis-Plus支持一次性插入或更新多条数据,提高了数据...

    mybatis-plus学习项目笔记

    初始化MyBatis-Plus,需要在Spring Boot的配置文件中添加MyBatis-Plus的相关依赖,然后创建实体类、Mapper接口和对应的XML文件,最后通过BaseMapper接口实现基本的CRUD操作。 4. **Lambda查询** MyBatis-Plus引入...

    Mybatis-Plus映射实现过程

    6. **批量操作**:Mybatis-Plus支持批量插入、更新和删除操作。例如,`batchInsert(List)`方法可以一次性插入多个对象到数据库,提高了效率。 7. **主键策略**:Mybatis-Plus提供了多种主键生成策略,如ID_WORKER...

    ssm-mybatis-layui.zip

    总的来说,"ssm-mybatis-layui.zip"项目提供了一个完整的用户管理系统的示例,展示了SSM框架在实际开发中的应用,同时也为后续添加角色管理和权限控制提供了基础。开发者可以通过学习和修改这个项目,提升自己的Java...

    mybatis常用语句和lyaui 多条件查询加分页

    MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集的过程,它可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。...

    mybatis_plugin_2.91

    MyBatis Plus是MyBatis的一个扩展,提供了更为强大的CRUD操作,包括自动填充、条件构造、批量插入、删除等,简化了日常的数据库操作,与MyBatis Plugin有相似的目标,都是为了提升MyBatis的开发效率。 MyBatis ...

    MyBatis语句规范化拦截器1

    在MyBatis中,我们可以利用拦截器(Interceptor)机制来实现特定的功能,比如规范化SQL语句,确保更新和删除操作的准确性。本话题主要探讨如何编写一个MyBatis语句规范化拦截器,防止因条件错误导致的批量操作对...

    Mybatis 条件查询 批量增删改查功能

    这个例子中,我们使用了 foreach 语句来批量添加数据,collection 属性指定了要添加的数据列表,item 属性指定了每个数据的值。 批量删除数据: ```java @Delete({ "&lt;script&gt;delete from company_label where ...

    Spring mvc mybatis plus 实现AOP 切面日志系统

    它在MyBatis的基础上增加了诸如自动化CRUD(创建、读取、更新、删除)操作,条件构造器等功能,减少了大量重复的SQL代码。在日志系统中,MyBatis Plus可以用于将日志信息存储到数据库,方便进行持久化管理。 **AOP...

    springboot+mybatis+poi 实现excel导入导出

    1. **添加依赖**:在SpringBoot项目的pom.xml文件中,我们需要引入SpringBoot的MyBatis Starter和Apache POI的依赖。例如: ```xml &lt;groupId&gt;org.springframework.boot &lt;artifactId&gt;spring-boot-starter-data-jpa...

    18-MyBatis-Plus_mybatis-plus_

    然后,在 MyBatis 的配置文件中添加 MyBatis-Plus 的配置,包括数据库连接信息和全局配置等。 3. **基础操作** - **插入(Insert)**: MyBatis-Plus 提供了单表插入、批量插入和主键自增等多种方式,只需一行代码...

    mybatis代码生成工具

    本篇文章将详细探讨“mybatis代码生成工具”,特别是其添加的example对象序列化和批量插入功能。 1. **Mybatis代码生成器** Mybatis代码生成器是Mybatis框架的一个强大辅助工具,它能够根据数据库表自动生成对应...

Global site tag (gtag.js) - Google Analytics