关于Mybatis中keyProperty属性

手敲MyBatis(十三章)-返回Insert操作自增索引值 这一章的目的主要是插入语句以后返回插入记录的id,因为插入语句可分为要返回记录id,不要返回记录id的以及不同数据源类型执行的时机也不同(如:oracle不支持主键,需要先插入序列再增加,Mysql支持主键增加一条记录就会有索引)。如下图,insert里包含selectKey,由selectKey去执行查询此次新增的id记录,我们看到selectKey标签上的属性有keyProperty、order、resultType。 阅读详情

Mybatis中insert标签的keyProperty属性的问题

今天看一个教程,中间有用mybatis写一个新增的方法,使用到了mybatis中的insert标签,需要新增之后返回新增行的主键ID,由于主键是自增的,所以实现方法可以用到useGeneratedKeys以及keyProperty这两个属性。

    例如这样:useGeneratedKeys="true" keyProperty="id"
    新增的xml如图:
    这里要注意几个问题:
    1.keyProperty中对应的值是实体类的属性,而不是数据库的字段。
    2.添加该属性之后并非改变insert方法的返回值,也就是说,该方法还是返回新增的结果。而如果需要获取新增行的主键ID,直接使用传入的实体对象的主键对应属性的值。如下图:
    这样就能拿到新增行的主键ID:

    加油,奥力给!!!😂😂😂
在3.3.0的mybatis中keyProperty写错也没事儿,但是mybatis升级到3.4.2以后会报错没有payId对应的get方法,提示没有对应的属性

Halcon工业相机开发全流程:从SDK配置到实时图像采集(C++版) 本文详细介绍了使用C++进行Halcon工业相机开发的完整流程,从SDK配置到实时图像采集的实现。涵盖环境搭建、设备初始化、回调机制、参数控制等关键环节,并提供异常处理和实战案例,帮助开发者快速掌握工业视觉系统的开发技巧。 阅读详情

相关推荐

Android14_MTK调试LCD屏功能

android14 MTK平台调试LCD屏

m0_37786046的博客 1471

【详解】mybatis中insert标签useGeneratedKeys,keyProperty的使用

前提:数据库表中id是自增长的。标签是<insert> useGeneratedKeys为true的作用:获取插入记录的自增长字段值。 keyProperty:获取的是哪一个字段,对应的是javaBean中的值。 在dao层的方法中返回值是int类型。 #为true:插入的表以自增列为主键,则允许 JDBC 支持自动生成主键,并可将自动生成的主键返回; useGeneratedKeys=true; #这个id是JavaBean中的属性 keyProperty="id" ...

CodingLJ 2122

别再只调电位器了!用单片机PWM控制LM317输出电压,精度和玩法都多了

本文探讨了如何利用单片机PWM控制LM317输出电压,替代传统的电位器调节方案。通过PWM信号的有源滤波和运放处理,实现了更高精度(±5mV)、更好温度稳定性(0.01%/°C)的数控稳压电源设计,支持远程控制和可编程曲线输出,为经典电路注入数字化智能。

weixin_29164497的博客 355

mybatis中的keyProperty属性详细介绍

在mybatis的配置文件中,keyProperty 和 useGeneratedKeys 往往搭配使用。useGeneratedKeys 参数只针对 insert 语句生效,默认为 false。当设置为 true 时,表示如果插入的表以自增列为主键,则允许 JDBC 支持自动生成主键,并可将自动生成的主键返回。具体用法: useGeneratedKeys="true" keyProperty="id"

m0_61346425的博客 4173

【关于四足机器人那些事】足端轨迹规划-八次多项式轨迹

系列文章目录 文章目录系列文章目录前言一、多项式曲线二、八次多项式曲线总结 前言 在四足机器人的研究中,有一个很关键的问题,就是如何减少足端在触地瞬间的冲击,避免把机器人把自己给蹬倒了?这时候就需要一个合理的足端轨迹规划。本篇将会介绍几种足端轨迹。 本文将对四足机器人的足端轨迹进行规划。将数学中的复合摆线和多项式曲线引入到足端轨迹的规划中,根据零冲击原则[2],规划出 3 条满足要求的足端轨迹,包括: 复合摆线轨迹 八次多项式轨迹 分段五次多项式轨迹 本篇先介绍 - 八次多项式轨迹 一、多项式曲

LiuZ的博客 2955

SAP_MM/CO模块-超详细的CK11N/CK40N取值逻辑梳理(十几种业务场景,1.76W字)

本文主要讲述的是三个大的知识点,超详细,涉及到知识点比较多,并且串起来讲解,这也是我在网上搜不到相关资料才自己慢慢研究测试出来的,断断续续耗费了我一周多时间,相信只要你们认真看完,肯定会有所收获; 1、CK11N/CK40N成本发布功能中,系统前台的取数逻辑,涉及到多个采购信息记录、生产版本、货源清单、配额协议等对成本价发布的影响~~!! 2、CK11N与CK40N发布的成本价不一致的问题~~!! 3、如何处理外协加工物料的外协价与BOM组件成本取值不匹配的问题~~!!

风沙的博客 4072

mybatis实战:四、insert 用法(普通插入、返回主键自增的值)

database Id :如果配置了 databaseidProvider会加载所有的不带 databaseId 的或匹配当前 databaseId 的语句 如果同时存在带databaseId 和不带 databaseid 的语句,后者会被忽略.parameterType :即将传入的语句参数的完全限定类名或别名 这个属性是可选的,因为 MyBatis 可以推断出传入语句的具体参数,因此不建议配置该属性。序指定数据库的列,这里列的值会和 keyProperty 配置的属性一一对应。

H215919719的博客 9180

Android Input——输入系统介绍(一)

Input 系统对于提供流畅、灵敏和一致的用户交互体验至关重要,它需要在不同的设备、场景和应用中保证输入事件的正确性、及时性和安全性。Android 输入系统是一个复杂但高效的设计,旨在处理来自各种输入设备(如触摸屏、键盘等)的用户交互,并将这些交互转换为应用程序可以理解和响应的形式。EventHub:输入系统的最底层,直接与硬件通信,监听和读取输入设备的原始事件。:从 EventHub 获取原始输入事件,对其进行解析,转化为更高层次的事件,以便上层应用或服务能够理解。

小旭的专栏 1708

Mybatis属性useGeneratedKeys,keyProperty,keyColumn的使用

Duplicate entry '17' for key 'PRIMARY

幸遇三杯酒好,况逢一朵花新 1万+

2023华为OD面试手撕真题【最长公共前缀】

2023华为OD面试手撕真题【最长公共前缀】

MISAYAONE的博客 5236

Lammps实现单轴压缩-应力应变曲线以及弹性模量计算

Lammps实现单轴压缩-应力应变曲线以及弹性模量计算

Rockyoung 1万+

Mybatis中的useGeneratedKeys和keyProperty属性的作用

参考链接:https://blog.youkuaiyun.com/fengkungui/article/details/82772302 https://www.iteye.com/blog/bugyun-2286145 https://blog.youkuaiyun.com/weixin_40936211/article/details/...

已被格式化的叔叔 844

麒麟V10安装图形化界面

在配置VNC时发现,原本麒麟V10系统最小化安装,导致无图形化界面,先需要对其进行安装。 首先确保无图形化界面,可以在终端输入startX命令查看是否报错。 安装介绍: 1、 安装图形化界面 yum grouplist //查看可用yum安装组 注:这里一般会有缺少包或者出现包不符合的问题 导入软件包分组信息文件xxxx-comps.xml arm: 将此文件传送到源服务器, 然后createrepo -g导入到arm的base目录和updates目录 createrepo -g e33dc

Pro_jhf的博客 8071

Mybatis的useGeneratedKeys和keyProperty属性

Mybatis的useGeneratedKeys和keyProperty属性

qq_43955390的博客 622

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Mybatis selectKey标签的keyProperty属性报错,关键字间隔不能有空格

源代码片段: 1 <insert id="addAdminAction" parameterType="x.x.x.RoleVo"> 2 <selectKey keyProperty="idRole, createdDate" resultType="x.x.x.RoleVo" order="BEFORE"> 3 select ge...

djcctv1223的博客 938

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

mybatis中的keyProperty和useGeneratedKeys 属性详细介绍

在mybatis的配置文件中,keyProperty 和 useGeneratedKeys 往往搭配使用。useGeneratedKeys 参数只针对 insert 语句生效,默认为 false。当设置为 true 时,表示如果插入的表以自增列为主键,则允许 JDBC 支持自动生成主键,并可将自动生成的主键返回。具体用法: useGeneratedKeys=“true” keyProperty=“id”

weixin_44249746的博客 1687

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

关于Mybatis中对应操作数据库.xml(userDOMapper.xml)文件中keyProperty和useGeneratedKeys属性的作用

当我们第一次不加keyProperty和userGeneratedKeys参数属性的时候 首先大家看下我的数据库设计,是使用了递增的 当我第一次不加两个参数的时候,数据进来的效果如下: 没有数据进来,虽然我后台已经get了对应表的id字段数据,但是没有显示 我们尝试一下加上这两个参数属性在重新运行一下 此时它就可以正常获取出来了 总结 keyProperty和useGenerated...

July_guowensheng的博客 1129

关于Insert的属性KeyProperty的用法,细节决定成败

源代码 某xml中的insert <insert id="addCommunity" parameterType="jmu.lt.po.Community" keyProperty="cid" useGeneratedKeys="true"> insert into community(cName,cProvince,cCity,cStreet,cTel) values(#{name},#{province},#{city},#{st...

Std_CoolGuy的博客 2034

MyBatis useGeneratedKeys keyProperty 含义

获得自增主键 1.在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名! Mybatis执行完插入语句后,自动将自增长值赋值给对象Spares的属性id。因此,可通过NoteDo对应的getter方法获取! useGeneratedKeys 取值范围true|false 默认值是...

cf的博客 313

ExecutorException: No setter found for the keyProperty

在上述XML配置中,keyProperty属性的值为XXX_XX,resultType属性的值为long,order属性的值为BEFORE。这是一个使用在MyBatis的SELECT语句中的SELECTKey元素,用于生成一个自增的主键值并赋值给指定的属性。

weixin_48052655的博客 1225

SpringBoot+Mybatis框架报错:No setter found for the keyProperty

由于这里的使用的insert方法,传入的数据中并没有自增的属性id,所以在取出。:是唯一能够识别对象的属性,对应的是实体类的属性。MyBatis会使用。去除insert标签中的keyProperty属性。方法来取出数据库内部生成的主键(自增后的值):MyBatis使用JDBC的。的返回值设置它的值。

miaomiaolaoxiong的博客 1538
上一篇: 解决 Mybatis 报错 org.apache.ibatis.ognl.NoSuchPropertyException: XXXCriteria$Criterion.noValue
下一篇: SyntaxError: (unicode error) ‘unicodeescape‘ codec can‘t decode bytes in position 2-3: truncated \UX
qq_34412985
博客等级 码龄11年 143粉丝 983原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值