某些情况进行insert时不知道主键值(主键为自增),例如系统新增用户时,有用户序号(主键 自增),用户名,密码。插入时只需插入用户名和密码,之后取得mysql自增的序号。

如下为mysql的usr表结构:

对应的实体类

Mapper

parameterType:参数类型,此处为实体类的完整路径。(可省略,mybatis会自动识别参数类型)。
useGeneratedKeys:令 MyBatis 使用 JDBC 的 getGeneratedKeys 方法来取出由数据库内部生成的主键(比如:像 MySQL 和 SQL Server 这样的关系数据库管理系统的自动递增字段)。
keyProperty:实体类中对应的属性。(mybaits会将取得的主键值设置到实体类的属性中)。

测试类:

no表示插入行数,user.getNo()取得主键值。

运行结果:



转载于:https://www.cnblogs.com/ZTPX/p/10709731.html

Mybaits插入记录返回主键值相关推荐

  1. Sql 插入记录返回主键id

    有时候,我们的主键id是自动生成的,然后想要插入记录后,就取得这条记录的id,怎么做呢? 比如我现在的一个student表的字段为:id(PK autoIncrement), name, school ...

  2. mysql插入数据返回主键值_Mysql插入记录后返回该记录ID

    最近和Sobin在做一个精品课程的项目,因为用到一个固定的id作为表间关联,所以在前一个表插入数据后要把插入数据生成的自增id传递给下一个表.研究了一番决定使用Mysql提供了一个LAST_INSER ...

  3. mysql插入数据返回主键值_Mysql千万级别数据批量插入只需简单三步!

    第一步:配置my.ini文件 文件中配置 bulk_insert_buffer_size=120M 或者更大 将insert语句的长度设为最大. Max_allowed_packet=1M Net_b ...

  4. spring jdbcTemplate 插入对象返回主键值

    2019独角兽企业重金招聘Python工程师标准>>> public int addClifford(Clifford clifford) {String sql = "i ...

  5. MyBatis 插入数据库返回主键

    最近在搞一个电商系统中由于业务需求,需要在插入一条产品信息后返回产品Id,刚开始遇到一些坑,这里做下笔记,以防今后忘记. 类似下面这段代码一样获取插入后的主键 User user = new User ...

  6. MyBatis框架——mybatis插入数据返回主键(mysql、oracle)

    向数据库中插入数据时,大多数情况都会使用自增列或者UUID做为主键.主键的值都是插入之前无法知道的,但很多情况下我们在插入数据后需要使用刚刚插入数据的主键,比如向两张关联表A.B中插入数据(A的主键是 ...

  7. 3、JavaWeb中Service层的作用、MyBatis的重要组件、mybatis-config.xml中的别名映射、properties配置、#{}和${}的区别、获取插入数据的主键值

    文章目录 1.Service层的作用 2.MyBatis重要组件 Resources SqlSessionFactoryBuilder SqlSessionFactory SqlSession 针对上 ...

  8. oracle 导入数据时主键丢失,Oracle 插入数据 返回主键

    场景:解决getJdbcTemplate往oracle数据库中插入数据返回主键出错有关问题 解决getJdbcTemplate往oracle数据库中插入数据返回主键出错问题 我们使用Spring中的J ...

  9. Mybatis批量插入,返回主键ID不成功,巨坑

    一.场景说明 批量插入,返回主键ID报错 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibati ...

最新文章

  1. docker 查看容器磁盘大小_软件安全 : Docker逃逸详解
  2. Hinton最新演讲透露下一代神经网络模型的构想 | SIGIR 2020
  3. python字符串截取拼接_Python字符串拼接、截取及替换方法总结分析
  4. oracle中schema指的是什么?
  5. ExtJS MVC学习手记 1
  6. LeetCode 4 Median of Two Sorted Arrays
  7. maven关联oracle,maven添加oracle jdbc依赖
  8. 直播丨MySQL之父Monty来咯,腾讯云CDB/CynosDB技术揭秘之自主可控、前沿探索
  9. php 获取mac地址栏,php 获取网卡物理(MAC)地址的实现方法
  10. Windows 8 Metro中文件的操作及访问(读写删除复制)
  11. heidisql 命令保存blob_git常用命令总结
  12. 随手写了个android应用
  13. Mac OS Catalina 如何连接老旧的惠普 HP Laser Jet 1020 plus 打印机
  14. 火狐浏览器丢失书签,恢复无法处理备份文件的解决方案
  15. 查看office2016是不是永久激活状态
  16. 1688-item_search_img - 按图搜索1688商品(拍立淘)
  17. 人脸识别错误代码437是什么意思_英雄联盟手游unabletologin什么意思?显示unabletologin解决方法[多图]-攻略...
  18. 收发EtherCAT帧——ecx_closenic
  19. 软件需求分析(第九章)
  20. Linux 系统Trouble shouting及修复FATAL: NO bootale medium found! System halted

热门文章

  1. [深度学习] 分布式Horovod介绍(四)
  2. 深度学习 正则化 正则化率_何时以及如何在深度学习中使用正则化
  3. Linux进程和线程
  4. 针对C++和Delphi的LiveBindings一瞥
  5. 意大利终于付出了代价
  6. 北京某打工子弟学校之二
  7. 絮语之一:悲悯·海·《垂死的肉身》
  8. 超标量、超级流水线、超长指令字、向量机 SIMD
  9. 万维网服务器协议提供web,万维网的HTTP和FTP协议.doc
  10. java实体设置扩展属性setextattributes_transactionAttributes各属性意义及配置