`
yangyingda2008
  • 浏览: 15949 次
社区版块
存档分类
最新评论

Mybatis使用经验分享之批量操作

阅读更多
Mybatis使用经验分享之批量操作



上次分享了一下Mybatis查询的使用方法,今天再和大家分享先mybatis中的批量操作。
工具/原料

    Mybatis

方法/步骤

    批量删除:

     <delete id= "deleteBatchByXXX" parameterType= "list">

           delete from 表名 where groupon_id in

           <foreach collection="list" item= "item" index ="index"

                open= "(" close =")" separator=",">

                #{item}

           </foreach >

           </delete >

    注意,foreach是循环,用来读取传入的list参数。批量处理是parameterType的类型必须要注意。foreach标签中的collection属性表示传入的是什么集合类型。item表示的是集合中的一个量类似于

    List<String>list;

    for(String str:list){

         ……

    }

    item就相当于str的作用,用来遍历collection。index就是集合的索引。open表示标签以什么开始,close表示标签以什么结束。seprator表示元素之间的间隔。

    批量插入:

     <insert id="insertBatch" >

           insert into 表名 ( uid, groupon_id, create_time, receive_time) values

        <foreach collection="list" item= "item" index ="index" separator=",">

           (#{item.uid,jdbcType=BIGINT}, #{item.grouponId,jdbcType=BIGINT},

          #{item.createTime,jdbcType=INTEGER}, #{item.receiveTime,jdbcType=INTEGER})

        </foreach >

     </insert>

    用法基本同批量删除,这里需要注意item.XXX表示获取该对象的XXX属性。

    批量更新:

    <update id= "updateByIds" parameterType= "map">

        update 表名

        set submit_time = #{submitTime,jdbcType=BIGINT} where uid in

        <foreach collection="list" item= "uid" index ="index"

                open= "(" close =")" separator=",">

                #{ id}

         </foreach >

        </update >

    用法和之前的基本相同,但是需要注意传入的参数是map类型。

         

    批量查询: 
<select id="selecIds" resultType="list" parameterType="java.util.Map">      SELECT
<include refid="Base_Column_List" />
FROM 表名      WHERE id in      
<foreach collection="Ids" item="poiId" index="index" open="(" close=")" separator=",">           
#{Id}       
</foreach>       
  AND pass_uid = #{passUid}       
  <if test="status != null">         
  AND status = #{status,jdbcType=BIGINT}  
  </if>  </select>

    注意标签的用法和上面的大同小异,都是通过传入一个集合对象来进行值得批量查询。
    END

注意事项

    批量操作核心就是一次传入多个数据然后进行相关操作

    增删改查中掌握其中一个其他的也不成问题

camel骆驼男士凉鞋 真皮潮流魔术贴沙滩鞋男鞋 夏季新款正品凉鞋 只要56元!

http://redirect.simba.taobao.com/rd?w=unionnojs&f=http%3A%2F%2Fai.taobao.com%2Fauction%2Fedetail.htm%3Fe%3DYNbrUj%252FZdJwjmraEDZVrLkKA%252ByOYgzU6TbuPAry6zvGLltG5xFicOdXrTUTgh9sMDPIwxrc30rhF03SVjj78hGqYCHH8uv2oZb7Xhy%252F%252BGHmWC8e6JwspUeIZWR1bMnHu%26unid%3D96391090%26ptype%3D100010%26from%3Dbasic&k=5ccfdb950740ca16&c=un&b=alimm_0&p=mm_96391090_7268811_24064425

原博客地址:

java编程之怎样把Long转换成Date的日期格式

http://jingyan.baidu.com/article/19192ad8312e6ae53f57074c.html

java编程之String的日期转换成Long类型的时间

http://jingyan.baidu.com/article/915fc414cdd2eb51384b204c.html

mysql数据库中null值与其他值的比较

http://jingyan.baidu.com/article/9113f81b2adc882b3214c7cb.html

Java编程经验分享之Map使用

http://jingyan.baidu.com/article/215817f7d9d6b31eda1423d8.html

MySql使用经验——通过in查询怎样排序问题

http://jingyan.baidu.com/article/67662997325ccf54d51b84d5.html

Mybatis使用经验之xml注意事项

http://jingyan.baidu.com/article/fec7a1e51d7b451190b4e729.html

Mybatis使用经验分享之批量操作

http://jingyan.baidu.com/article/11c17a2c7f376af446e39d21.html

MyBatis使用经验分享之查询

http://jingyan.baidu.com/article/af9f5a2dd8143b43140a4520.html

linux怎样搭建tomcat服务器

http://jingyan.baidu.com/article/3052f5a1d93c1497f31f860d.html

怎样用linux脚本查询数据中的数据

http://jingyan.baidu.com/article/2c8c281dfb0add0008252a04.html

linux编程实践经验sshpass、md5sum、ssh

http://jingyan.baidu.com/article/cd4c2979ca556c756e6e60aa.html
分享到:
评论

相关推荐

    myBatis使用分享

    MyBatis是一个轻量级的框架,它允许开发人员将SQL查询、存储过程和高级映射与Java的POJOs(Plain Old Java Objects)相结合,极大地简化了数据库操作。 1. MyBatis概述: MyBatis消除了手动设置JDBC参数和处理结果...

    mybatis详细介绍,特点,特性,用途,使用方法,学习方法文档

    5. **高级功能支持**:如存储过程支持、分页查询、批量插入等高级功能,让 MyBatis 成为了处理复杂数据库操作的理想选择。 ### 使用方法详解 1. **配置数据源**:首先需要在配置文件中设置数据库连接信息,包括 ...

    it你好linux学习文档之---Zabbix使用手册V1.2.pdf

    文档本身是Zabbix使用手册的V1.2版本,作者itnihao在文档中分享了他的经验,并提供了联系方式。文档内容涉及Zabbix的安装配置、邮件报警和自定义脚本等方面,作者还强调了手册的持续更新和完善,并提供了更新日志和...

    Java面试宝典

    1. **批量操作**:使用BatchUpdate进行批量插入、更新等操作,提高性能。 2. **事务管理**:确保数据的一致性和完整性,使用Connection对象的beginTransaction()和commit()方法控制事务边界。 3. **连接池**:通过...

    试题库管理系统_基于SSM框架开发的Java Web MIS系统.zip

    5. **试题库管理**:系统包含试题的增删改查功能,支持分类、难度级别等属性的设定,同时可能有试题的导入导出功能,方便试题的批量管理和分享。 6. **试卷生成**:系统可以自动生成试卷,用户可以根据需求选择试题...

    Hibernate面试题分析.zip

    10. 实战经验分享 在实际项目中,需要根据业务场景选择合适的持久化策略,例如,选择合适的一对多、多对一、一对多关联映射方式,避免N+1查询问题,优化关联查询性能。 通过以上对Hibernate面试题的深入分析,我们...

    Spring-JDBC,带一小例子

    在博文链接中,作者可能分享了一个使用Spring-JDBC的实际示例,虽然具体内容未给出,但我们可以探讨Spring-JDBC的一些关键特性: 1. **JdbcTemplate**: 这是Spring-JDBC的主要组件,它通过提供一组模板方法来执行...

    JDBC代码,本人在达内学习的代码!!

    本代码集是作者在达内教育机构学习期间积累的JDBC实战代码,旨在分享和交流学习经验。 在JDBC中,首先我们需要了解几个核心概念: 1. **Driver Manager**: 驱动管理器,它是JDBC的入口点,负责加载数据库驱动,并...

    听墨——基于云计算的数据存储平台设计.pdf

    文件与文件夹操作涵盖了创建、删除、搜索、修改和下载等,听墨云盘支持批量操作以及通过链接和二维码进行内容分享。外链文件操作则允许用户对外链文件进行编辑和管理,包括删除、转存和设置外链密码等。同时,听墨...

    java固定资产管理系统毕业设计源码 (源代码+论文).zip

    9. **论坛交流**:为用户提供一个讨论平台,分享使用经验或提出问题,促进用户之间的交流和合作。 10. **个人中心**:用户可以查看和修改个人信息,查看自己的领用记录、报修历史等。 11. **系统管理**:包括...

    spring面试题.rar

    描述中提到的“博文链接:https://dongqiang1989-126-com.iteye.com/blog/1841156”指向了一个博客文章,虽然具体的内容没有提供,但我们可以推测这篇文章可能包含了关于...,可能是作者对Spring的理解和经验分享...

    基于springboot的在线考试与学习交流网页平台源码数据库.doc

    4. **SSM框架**(Spring+SpringMVC+MyBatis):虽然在项目中主要使用Spring Boot,但在某些模块或场景下,可能会结合使用SSM框架中的组件,以实现更复杂的功能需求。 5. **JSP(Java Server Pages)**:用于构建动态...

    基于springboot的中国陕西民俗网源码数据库.doc

    - **互动交流**:提供留言功能,让用户可以直接向管理员或其他用户提问或分享自己的经验。 ### 三、关键技术点解析 #### 1. Spring Boot框架 - **自动化配置**:Spring Boot通过自动配置机制简化了Spring应用的...

    分享Spring in Action Third Edition 正版ebook

    书中会详细讲解如何使用Spring的数据访问支持进行数据库操作。 5. **Spring Boot**:尽管标题未提及Spring Boot,但作为Spring的现代开发方式,Spring Boot简化了Spring应用的初始搭建和配置过程。书中可能会涉及...

    java电子相册管理系统

    MyBatis或Hibernate作为持久层框架,负责数据库操作,提高了开发效率。前端可能使用React或Vue.js等现代JavaScript库,以组件化的方式构建用户界面。 核心功能方面,电子相册管理系统具备以下关键模块: 1. 用户...

    JAVA源码JAVA图书管理系统毕业设计(源代码+论文)

    - **MyBatis**:作为ORM框架,MyBatis可以将Java对象映射到数据库表上,使得数据操作更加简单直观。 - **RESTful API**:采用RESTful风格设计接口,使得前后端分离更加彻底,有利于系统的扩展与维护。 - **分页查询*...

    mysql优化方案

    - **实战技巧**:分享MySQL优化过程中的一些实用技巧,如使用Xtrabackup进行增量备份、使用Maatkit工具进行性能监控等。 #### 六、总结 通过对MySQL优化方案的学习与实践,我们不仅能够提高数据库的性能,还能增强...

    spring开发指南

    文档还可能包含实际项目中的最佳实践和经验分享,帮助开发者避免常见陷阱,提高开发效率。 随着版本的迭代,Spring 不断演进,增加了更多特性以适应不断变化的技术需求。例如,从文中提到的版本 0.6 到后来的版本,...

    MySQL数据库高性能处理开发实战指南70讲

    - **主流ORM框架对比**:分析Hibernate、MyBatis等ORM框架的特性与使用场景。 - **代码生成工具**:介绍基于ORM的代码生成工具(如MyBatis Generator),简化开发过程。 - **性能优化建议**:提出针对ORM框架的性能...

Global site tag (gtag.js) - Google Analytics