MyBatis中如何获取自动生成的(主)键值

这篇具有很好参考价值的文章主要介绍了MyBatis中如何获取自动生成的(主)键值。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Mybatis中insert 方法总是返回一个int值 ,这个值代表的是插入所影响的行数。 如果id采用自增长策略,自动生成的键值在 insert 方法执行完后可以被设置到传入的参数对象中。那么我们可以在service中通过传入的对象来获得插入的id值。

mapper.xml文件

 <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.woniuxy.springbootmybatis.entity.User" useGeneratedKeys="true">
        insert into user
        ( id,user_name,tel
        ,password,age,create_date
        ,head_img,dept_id)
        values (#{id,jdbcType=INTEGER},#{userName,jdbcType=VARCHAR},#{tel,jdbcType=VARCHAR}
        ,#{password,jdbcType=VARCHAR},#{age,jdbcType=INTEGER},#{createDate,jdbcType=TIMESTAMP}
        ,#{headImg,jdbcType=VARCHAR},#{deptId,jdbcType=INTEGER})
    </insert>

service代码

 @Override
    public int insertSelective(User record) {
        int result = userMapper.insertSelective(record);
        log.info("当前行数据的ID为{}",record.getId());
        return result;
    }

日志文件为:文章来源地址https://www.toymoban.com/news/detail-409110.html

2023-04-06 15:45:09.813  INFO 15952 --- [nio-8080-exec-1] c.w.s.service.impl.UserServiceImpl       : 当前行数据的ID为107

到了这里,关于MyBatis中如何获取自动生成的(主)键值的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • springboot+maven插件调用mybatis generator自动生成对应的mybatis.xml文件和java类

    mybatis最繁琐的事就是sql语句和实体类,sql语句写在java文件里很难看,字段多的表一开始写感觉阻力很大,没有耐心,自动生成便成了最称心的做法。自动生成xml文件,dao接口,实体类,虽一直感觉不太优雅,但省去了很多麻烦,当表增加或修改字段的时候重新生成便轻松搞

    2024年02月14日
    浏览(41)
  • Mybatis generator实战:自动生成POJO类完整解决方案

    在用Mybatis generator 生成可以用来访问(多个)表的基础对象,遇到一个问题,就是columnRenamingRule可以替换所有表元素里字段前缀 但是如果想去掉所有表的前缀,比如有多个表: 期望得到的POJO结果是: 参照: https://github.com/mybatis/generator/issues/275 https://github.com/mybatis/generator/

    2024年02月04日
    浏览(39)
  • SpringBoot 集成MyBatis-Plus-Generator(最新版3.5.2版本)自动生成代码(附带集成MyBatis-Plus)

    快速入门 代码生成器配置(新) spring boot 2.3.12.RELEASE mybatis 3.5.2 mybatis plus 3.5.2 mybatis plus generator 3.5.2 mysql 8.0.17 velocity 2.3 hutool 5.8.15 druid 1.2.8 lombok 自带 示例程序选择的技术目前各项技术的稳定版本。 相信大家厌烦重复的造轮子过程,编写与数据库表对应的实体类,接着再进

    2024年02月21日
    浏览(55)
  • 【重要】springboot实战(六)之mybatis-plus代码自动生成器

    目录 环境: 步骤: 1.添加依赖 2.配置代码 3.运行 测试 1.测试生成的service 1.1、service用法 2.分页查询 2.1、分页插件配置  2.2、测试 3.源码 jdk:1.8 springboot版本:2.7.15 mybatis-plus版本:3.5.1以上 (本文章用的当前最新版本:3.5.3.2,代码适用于3.5.1版本以上的版本) 在测试类中创建

    2024年02月03日
    浏览(48)
  • 【企业级SpringBoot单体项目模板 】——Mybatis-plus自动代码生成

    😜 作           者 :是江迪呀 ✒️ 本文 : SpringBoot项目模版 、 企业级 、 模版 ☀️ 每日   一言 : 我们之所以这样认为,是因为他们这样说。他们之所以那样说,是因为他们想让我们那样认为。所以实践才是检验真理的唯一准则。 上回 我们说了一些开发规范

    2024年02月07日
    浏览(55)
  • postman中使用formdata数据获取参数编写pre-request Script获取参数自动生成sign

    postman中header部分变量利用脚本生成相应的数据 timestamp:通过脚本获取生成的变量 sign:通过脚本获取生成的变量 body中的参数是form-data格式: 所有的参数需要根据实际的接口参数填写   程序片段: 由于本人的接口的加密方式是入参的参数按照字母排序然后加密字符串,所以

    2024年02月11日
    浏览(60)
  • python如何自动生成流程图

    Python中有多个库可以用来生成流程图,其中最常用的是graphviz库。graphviz是一个开源的流程图绘制工具,可以使用Python的graphviz库来自动生成流程图。下面是使用graphviz库生成流程图的步骤: 安装graphviz库:在终端或命令提示符中使用pip命令安装graphviz库,如下所示: 以下是一

    2024年02月12日
    浏览(56)
  • 如何使用LLM实现文本自动生成视频

    推荐:使用 NSDT场景编辑器 助你快速搭建可二次编辑的3D应用场景     基于扩散的图像生成模型代表了计算机视觉领域的革命性突破。这些进步由Imagen,DallE和MidJourney等模型开创,展示了文本条件图像生成的卓越功能。有关这些模型内部工作的介绍,您可以阅读本文。 然而,

    2024年02月12日
    浏览(52)
  • 如何利用ChatGPT自动生成SQL语句

    作为一名开发者,你可能已经使用过自然语言处理(NLP)及其可能彻底改变我们与技术互动的方式。由OpenAI提供支持的文本到SQL工具是一种强大的方法,可以从自然语言文本中生成SQL语句。在本博客文章中,我们将探讨七个创造性和不寻常的示例,展示如何使用ChatGPT生成SQ

    2024年02月01日
    浏览(56)
  • 如何在IDEA中自动生成类图

    笔者之前在OOPre课程中曾用IDEA来编写java代码,但是很多时候IDEA自带的功能并不能给出一个较为直观的关系图来显示一个项目中各个类(class)或接口(interface)等之间的关系。 在该课程最后一次作业要求所写博客中,我看到有同学在作业中附上了非常直观的类图,便也想试着探索

    2024年02月05日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包