首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MyBatis魔法堂:Insert操作详解(返回主键、批量插入)

一、前言                                      数据库操作怎能少了INSERT操作呢?下面记录MyBatis关于INSERT操作的笔记,以便日后查阅。...对特定数据库(如PostgreSQL),若自动生成的主键不是第一个字段则必须设置 keyProperty ,默认值unset,用于设置getGeneratedKeys方法或selectKey子元素返回值将赋值到领域模型的哪个属性中...into TStudent(id, name, age) values(#{id}, #{name}, #{age}) </insert   注意:mapper接口返回值依然是成功插入的记录数,但不同的是主键值已经赋值到领域模型实体的...接口的add方法返回值将是最一条INSERT语句的操作成功的记录数目(就是0或1),而不是所有INSERT语句的操作成功的总记录数目 2....八、参考                                       http://mybatis.github.io/mybatis-3/zh/dynamic-sql.html

4.8K80
您找到你想要的搜索结果了吗?
是的
没有找到

MyBatis插入数据后返回主键id

最近开发全栈项目时,前端有个数据行可以被随便修改,所以必须给他一个标识记录该数据行,即向MySQL数据库中插入一条记录后,需要获取此条记录的主键id值返回给前端。...,name) values(#{articleTitle},#{articleCreateDate},#{articleContent},#{addName}) insert> 这种方式只是返回一个影响行数值...},#{articleContent},#{addName}) 关键属性 useGeneratedKeys 仅适用于 insert 和 update,这会令 MyBatis 使用 JDBC...的 getGeneratedKeys 方法来取出由数据库内部生成的主键(比如MySQL的自动递增主键字段),默认值:false。...所以要打开设为 true keyProperty 仅适用于 insert 和 update,指定能够唯一识别对象的属性,MyBatis 会使用 getGeneratedKeys 的返回值或 insert

1.6K10

MyBatisInsert方法一直返回-2147482646?

前几天在做项目demo的时候,发现有一个很奇怪的现象,就是MyBatis发现更新和插入返回值一直为"-2147482646",无论怎么改,这个值一直不变......"; int res= sqlSession.insert(sql, "1");// 4、SqlSession.insert()方法: public interface SqlSession extends...Closeable { int insert(String var1); int insert(String var1, Object var2); } SqlSession是一个接口...,里面有insert方法,我们再来看一下这个接口的实现类: ?...阿里面试:“说一下从 url 输入到返回请求的过程” 千呼万唤始出来,这个奇怪的数字原来在这里出来的,其中可以看到它是固定返回的,没有任何判断逻辑...这样就证明了一点,只要你的insert方法在配置文件中配置的是

1.1K30

MyBatis框架:第四章:插入记录并返回主键

往数据库插入数据后,返回数据主键信息。有两种方法。 一种:使用insert标签中的useGeneratedKeys属性和keyProperty属性组合使用获取主键信息。...-- 插入用户useGeneratedKeys="true"表示返回生成的主键keyProperty 表示把返回的key注入到返回值的哪个属性中keyProperty="id" 表示把返回的id主键值注入到返回对象的...>insert into t_user(last_name,sex) values(#{lastName},#{sex})12345678910标签的使用 selectKey 通过前置或后置操作...,返回数据的主键值。...插入记录并返回主键主要是在标签中添加一个的作用主要就是为了返回插入记录后,自动生成的主键信息 order 表示执行的顺序。 AFTER 表示在插入之后执行。 BEFORE 在插入之前执行。

58200

Mybatis 手撸专栏|第15章:返回Insert操作自增索引值

Mybatis 手撸专栏第15章:返回Insert操作自增索引值本文是《Mybatis 手撸专栏》的第15章,我们将深入学习如何在Insert操作中返回自增索引值。...本章将详细介绍如何在Mybatis中实现返回Insert操作的自增索引值,并给出示例和实践指导。...但是,对于Insert操作而言,我们通常需要获取新插入记录的自增索引值,以便于后续的操作和处理。在本章中,我们将深入探讨如何在Mybatis中实现返回Insert操作的自增索引值。...返回自增索引值的配置和使用在Mybatis中,我们可以通过配置和使用一些特定的技术来实现返回Insert操作的自增索引值。下面,我们将分别对每种生成方式进行详细介绍和示例展示。...总结本章我们深入学习了如何在Mybatis中实现返回Insert操作的自增索引值。我们详细介绍了几种常见的数据库自增索引值的生成方式,并给出了在Mybatis中配置和使用的示例代码。

27140

MyBatis-08MyBatis注解方式之@Insert

概述 不需要返回主键 1.RoleMapper接口增加接口方法 2.单元测试 返回自增主键 1.RoleMapper接口增加接口方法 2.单元测试 返回非自增主键 1.RoleMapper...接口增加接口方法 2.单元测试 概述 @Insert注解本身很简单,需要注意的是如果需要返回主键的值,情况会稍微复杂一点,这种XML方式配置本质是一样的 ---- 不需要返回主键 1.RoleMapper...接口增加接口方法 /** * * * @Title: insertSysRole * * @Description: insertSysRole 不需要返回主键的情况...2018-04-19 01:49:03,092 INFO [main] (RoleMapperTest.java:151) - sqlSession close successfully ---- 返回自增主键...2018-04-19 01:50:16,704 INFO [main] (RoleMapperTest.java:187) - sqlSession close successfully ---- 返回非自增主键

92310
领券