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是一个轻量级的框架,它允许开发人员将SQL查询、存储过程和高级映射与Java的POJOs(Plain Old Java Objects)相结合,极大地简化了数据库操作。 1. MyBatis概述: MyBatis消除了手动设置JDBC参数和处理结果...
5. **高级功能支持**:如存储过程支持、分页查询、批量插入等高级功能,让 MyBatis 成为了处理复杂数据库操作的理想选择。 ### 使用方法详解 1. **配置数据源**:首先需要在配置文件中设置数据库连接信息,包括 ...
文档本身是Zabbix使用手册的V1.2版本,作者itnihao在文档中分享了他的经验,并提供了联系方式。文档内容涉及Zabbix的安装配置、邮件报警和自定义脚本等方面,作者还强调了手册的持续更新和完善,并提供了更新日志和...
1. **批量操作**:使用BatchUpdate进行批量插入、更新等操作,提高性能。 2. **事务管理**:确保数据的一致性和完整性,使用Connection对象的beginTransaction()和commit()方法控制事务边界。 3. **连接池**:通过...
5. **试题库管理**:系统包含试题的增删改查功能,支持分类、难度级别等属性的设定,同时可能有试题的导入导出功能,方便试题的批量管理和分享。 6. **试卷生成**:系统可以自动生成试卷,用户可以根据需求选择试题...
10. 实战经验分享 在实际项目中,需要根据业务场景选择合适的持久化策略,例如,选择合适的一对多、多对一、一对多关联映射方式,避免N+1查询问题,优化关联查询性能。 通过以上对Hibernate面试题的深入分析,我们...
在博文链接中,作者可能分享了一个使用Spring-JDBC的实际示例,虽然具体内容未给出,但我们可以探讨Spring-JDBC的一些关键特性: 1. **JdbcTemplate**: 这是Spring-JDBC的主要组件,它通过提供一组模板方法来执行...
本代码集是作者在达内教育机构学习期间积累的JDBC实战代码,旨在分享和交流学习经验。 在JDBC中,首先我们需要了解几个核心概念: 1. **Driver Manager**: 驱动管理器,它是JDBC的入口点,负责加载数据库驱动,并...
文件与文件夹操作涵盖了创建、删除、搜索、修改和下载等,听墨云盘支持批量操作以及通过链接和二维码进行内容分享。外链文件操作则允许用户对外链文件进行编辑和管理,包括删除、转存和设置外链密码等。同时,听墨...
9. **论坛交流**:为用户提供一个讨论平台,分享使用经验或提出问题,促进用户之间的交流和合作。 10. **个人中心**:用户可以查看和修改个人信息,查看自己的领用记录、报修历史等。 11. **系统管理**:包括...
描述中提到的“博文链接:https://dongqiang1989-126-com.iteye.com/blog/1841156”指向了一个博客文章,虽然具体的内容没有提供,但我们可以推测这篇文章可能包含了关于...,可能是作者对Spring的理解和经验分享...
4. **SSM框架**(Spring+SpringMVC+MyBatis):虽然在项目中主要使用Spring Boot,但在某些模块或场景下,可能会结合使用SSM框架中的组件,以实现更复杂的功能需求。 5. **JSP(Java Server Pages)**:用于构建动态...
- **互动交流**:提供留言功能,让用户可以直接向管理员或其他用户提问或分享自己的经验。 ### 三、关键技术点解析 #### 1. Spring Boot框架 - **自动化配置**:Spring Boot通过自动配置机制简化了Spring应用的...
书中会详细讲解如何使用Spring的数据访问支持进行数据库操作。 5. **Spring Boot**:尽管标题未提及Spring Boot,但作为Spring的现代开发方式,Spring Boot简化了Spring应用的初始搭建和配置过程。书中可能会涉及...
MyBatis或Hibernate作为持久层框架,负责数据库操作,提高了开发效率。前端可能使用React或Vue.js等现代JavaScript库,以组件化的方式构建用户界面。 核心功能方面,电子相册管理系统具备以下关键模块: 1. 用户...
- **MyBatis**:作为ORM框架,MyBatis可以将Java对象映射到数据库表上,使得数据操作更加简单直观。 - **RESTful API**:采用RESTful风格设计接口,使得前后端分离更加彻底,有利于系统的扩展与维护。 - **分页查询*...
- **实战技巧**:分享MySQL优化过程中的一些实用技巧,如使用Xtrabackup进行增量备份、使用Maatkit工具进行性能监控等。 #### 六、总结 通过对MySQL优化方案的学习与实践,我们不仅能够提高数据库的性能,还能增强...
文档还可能包含实际项目中的最佳实践和经验分享,帮助开发者避免常见陷阱,提高开发效率。 随着版本的迭代,Spring 不断演进,增加了更多特性以适应不断变化的技术需求。例如,从文中提到的版本 0.6 到后来的版本,...
- **主流ORM框架对比**:分析Hibernate、MyBatis等ORM框架的特性与使用场景。 - **代码生成工具**:介绍基于ORM的代码生成工具(如MyBatis Generator),简化开发过程。 - **性能优化建议**:提出针对ORM框架的性能...