iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >MyBatis怎么获取自动生成的键值
  • 324
分享到

MyBatis怎么获取自动生成的键值

2023-07-06 00:07:07 324人浏览 安东尼
摘要

这篇文章主要介绍“mybatis怎么获取自动生成的键值”,在日常操作中,相信很多人在MyBatis怎么获取自动生成的键值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MyBatis怎么获取自动生成的键值”的疑

这篇文章主要介绍“mybatis怎么获取自动生成的键值”,在日常操作中,相信很多人在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;    }

日志文件为:

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

非自增长的主键

<insert id="add" parameterType="user">    <selecTKEy keyProperty="id" order="BEFORE" resultType="string">        select uuid()    </selectKey>    insert into questions (id,title) values(#{id},#{title})</insert>
  • insert入参填充、返回值不变

    • 返回值还是Integer受影响的行数

    • 入参的user中也会注入主键值

  • selectKey :将执行结果注入到user的属性中

  • keyProperty:注入的user中主键对应的属性

  • order

    • BEFORE:selectKey在insert之前执行,一般为uuid、序列,此时执行结果已注入到user属性中,再执行insert时,使用#{id}即为selectKey注入的值

    • AFTER:selectKey在insert之后执行,一般为自增主

  • resultType:selectKey中执行sql的返回结果类型

到此,关于“MyBatis怎么获取自动生成的键值”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: MyBatis怎么获取自动生成的键值

本文链接: https://www.lsjlt.com/news/356437.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MyBatis怎么获取自动生成的键值
    这篇文章主要介绍“MyBatis怎么获取自动生成的键值”,在日常操作中,相信很多人在MyBatis怎么获取自动生成的键值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MyBatis怎么获取自动生成的键值”的疑...
    99+
    2023-07-06
  • mybatis怎么获取自动生成的主键
    MyBatis提供了多种方式来获取自动生成的主键。1. 使用元素:可以将元素添加到插入语句中,以便在执行插入操作后获取自动生成的主键...
    99+
    2023-08-24
    mybatis
  • MyBatis获取自动生成的(主)键值的方法
    Mybatis中insert 方法总是返回一个int值 ,这个值代表的是插入所影响的行数。 如果id采用自增长策略,自动生成的键值在 insert 方法执行完后可以被设置到传入的参数...
    99+
    2023-05-15
    MyBatis获取自动生成键值 MyBatis获取键值
  • Mybatis中如何获取生成的主键
    这篇文章主要介绍了Mybatis中如何获取生成的主键,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。如何获取生成的主键对于支持主键自增的数据库...
    99+
    2022-10-19
  • MyBatis如何获取数据库自生成的主键Id
    这篇文章将为大家详细讲解有关MyBatis如何获取数据库自生成的主键Id,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。MyBatis获取数据...
    99+
    2022-10-18
  • mybatis自动生成主键的方法是什么
    MyBatis提供了多种自动生成主键的方法,以下是其中几种常用的方法:1. 使用数据库的自增主键:在数据库中将主键字段设置为自增类型...
    99+
    2023-08-19
    mybatis
  • Mybatis怎么自动生成sql语句
    这期内容当中小编将会给大家带来有关Mybatis怎么自动生成sql语句,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Mybatis自动生成sql语句创建maven项目,将该配置文件运行即可生成 sql 语...
    99+
    2023-06-22
  • redis怎么获取所有的键值
    在Redis中,要获取所有的键值可以使用以下两个命令:1. KEYS命令:该命令可以返回匹配指定模式的所有键。语法如下:```KEY...
    99+
    2023-08-24
    redis
  • mybatis example怎么自动生成排序语句
    本篇内容介绍了“mybatis example怎么自动生成排序语句”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!mybatis e...
    99+
    2023-06-22
  • 使用MyBatis怎么获取插入记录的自增长字段值
    这期内容当中小编将会给大家带来有关使用MyBatis怎么获取插入记录的自增长字段值,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。第一步:    在Mybatis Mapper...
    99+
    2023-05-30
    mybatis
  • 利用Java如何获取Mybatis动态生成的sql接口实现
    目录前言1、编写xml: SqlGenarate.mapper.xml2、定义接口3、实现接口总结前言 如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 S...
    99+
    2022-11-12
  • 怎么用Python自动化一键获取日志
    本篇内容介绍了“怎么用Python自动化一键获取日志”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 前言对大部分的人来说,解决 Bug ...
    99+
    2023-06-15
  • 怎么在SpringBoot中使用Mybatis-Plus自动代码生成
    本篇文章为大家展示了怎么在SpringBoot中使用Mybatis-Plus自动代码生成,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。springboot是什么springboot一种全新的编程规范...
    99+
    2023-06-14
  • Mybatis-Plus默认主键策略导致自动生成19位长度主键id的坑
    某天检查一位离职同事写的代码,发现其对应表虽然设置了AUTO_INCREMENT自增,但页面新增功能生成的数据主键id很诡异,长度达到了19位,且不是从1开始递增的—— 我检查了一...
    99+
    2022-11-12
  • mybatis之怎么获取表中某一列的最大值
    今天小编给大家分享一下mybatis之怎么获取表中某一列的最大值的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。mybatis...
    99+
    2023-07-05
  • MyBatis Generator ORM层面的代码自动生成器怎么使用
    这篇文章主要介绍了MyBatis Generator ORM层面的代码自动生成器怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MyBatis Generator ...
    99+
    2023-07-05
  • 怎么使用Python获取字典键对应的值
    这篇文章主要介绍了怎么使用Python获取字典键对应的值的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Python获取字典键对应的值文章都会有所收获,下面我们一起来看看吧。当知道字典的键时:unit_r...
    99+
    2023-06-30
  • vue3输入框生成的时候如何自动获取焦点详解
    目录前言创建实例演示(创建文件,可忽略)解决方法1、方法一2、方法二总结前言 当我们在做vue3的项目的时候,在对一些信息的修改的时候,需要双击或者点击按钮来进行操作,让数据变成输入...
    99+
    2022-11-13
  • 怎么解决Mybatis-Plus自动生成的数据库id过长问题
    这篇文章主要讲解了“怎么解决Mybatis-Plus自动生成的数据库id过长问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决Mybatis-Plus自动生成的数据库id过长问题”吧...
    99+
    2023-06-21
  • Spring的@Value怎么从Nacos配置中心获取值并自动刷新
    这篇文章主要介绍“Spring的@Value怎么从Nacos配置中心获取值并自动刷新”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Spring的@Value怎么从Nacos配置中心获取值并自动刷新”...
    99+
    2023-07-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作