MyBatis批量添加、修改和删除
1、批量添加元素session.insert(String string,Object o)
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
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:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
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:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
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>MyBatis批量添加、修改和删除的更多相关文章
- ASP.NET MVC用存储过程批量添加修改数据
用Entity Framework 进行数据库交互,在代码里直接用lamda表达式和linq对数据库操作,中间为程序员省去了数据库访问的代码时间,程序员直接可以专注业务逻辑层的编写.但是对于比较复杂的 ...
- EF 批量 添加 修改 删除
1批量添加 db.T_Investigator.AddRange(list) 2批量删除 db.T_Investigator.RemoveRange(list) 3批量修改 for 循 ...
- mybatis批量添加、批量删除
<!-- 批量添加 --> <insert id="insertNameListSynHisBatch" parameterType="java.uti ...
- DNS添加/修改/查询/删除A记录
#查询DNS可用类 Get-WmiObject -Namespace root\MicrosoftDNS -List #查询所有资源记录 $mydns = [WMIClass]"ROOT\M ...
- Mybatis 批量添加,批量更新
此篇适合有一定的mybatis使用经验的人阅读. 一.批量更新 为了提升操作数据的效率,第一想到的是做批量操作,直接上批量更新代码: <update id="updateBatchMe ...
- Zabbix 4.0 API 实践,主机/主机群组 批量添加模板和删除模板
场景 我们日常在管理Zabbix 的时候,经常会需要批量添加模板和批量删除模板,Zabbix页面是提供的批量链接的功能,但是它链接的也只是当前页的主机,我们想扩展这个功能,在链接的时候,可以批量链接整 ...
- Mybatis批量添加、更新小结
虽然是很基础的东西,不过难免会忘记,所以写个笔记巩固一下,顺便分享. 实体类: @Data public class EventOrder { private Long id; private ...
- Mybatis批量添加对象List
1.对应的xml文件: <!--批量添加--><insert id="insertStandardItemInfo" parameterType="ha ...
- myBatis批量添加实例
<!-- 批量添加中转地数据 --> <insert id="addBatch" parameterType="com.isoftstone. ...
- myBatis批量添加,修改和删除
摘自: http://blog.csdn.net/myjlvzlp/article/details/8434376 1.批量添加元素session.insert(String string,Objec ...
随机推荐
- 基于iscroll实现下拉和上拉刷新
在原生APP的开发中,有一个常见的功能,就是下拉刷新的功能,这个想必大家都是知道的,但是原生APP的开发,有一个很大的问题就是,你每次更新一些功能,就要用户重新下载一次版本,尤其是在iOS系统中,新版 ...
- ros下xtion用法
xtion用openni2_launch openni2.launch就可以打开,但是在使用过程中有一些定制性问题: 首先弄清openni2_launch 中一些topic都是什么意思 http:// ...
- 开放API端口SIGN算法详细设计
开放API端口SIGN算法详细设计 前言 在app开放接口api的设计中,避免不了的就是安全性问题,因为大多数接口涉及到用户的个人信息以及一些敏感的数据,所以对这些接口需要进行身份的认证,那么这就需要 ...
- LPD Office插件使用指南
LPD Office插件已经发布至Azure上,您可以在本机Outlook和Office Online使用该插件 一:在Outlook中使用 LPD Office插件 打开Outlook应用,并点击“ ...
- Lookup 组件用法全解
Lookup是查找的意思,Lookup组件实现两个数据源的连接,和Join语句实现的功能类似,使用Lookup 组件需要配置: 两个输入:一个是上游数据流的输入Source Table,一个是要查找的 ...
- HDU 多校1.11
- 使用IIFE(立即执行函数)让变量私有化
今天去看了一个GITHUB上的开源项目,在客户端JS的脚本编写的时候,代码中多次使用了IIFE. 一开始我是懵逼的,不知道这种函数的意义何在,小菜鸟嘛. 后面我去研究了一番.发现了它的主要作用就是:让 ...
- SQL*Loader-605: Non-data dependent ORACLE error occurred — load discontinued
It seems the tablespace is full.
- 自定义编写jmeter的Java测试代码
我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","JavaV ...
- 【分类讨论】Codeforces Round #395 (Div. 2) D. Timofey and rectangles
D题: 题目思路:给你n个不想交的矩形并别边长为奇数(很有用)问你可以可以只用四种颜色给n个矩形染色使得相接触的 矩形的颜色不相同,我们首先考虑可不可能,我们分析下最多有几个矩形互相接触,两个时可以都 ...