mybatis如何实现新增save结束后自动返回主键id
发表于:2025-01-17 作者:千家信息网编辑
千家信息网最后更新 2025年01月17日,小编给大家分享一下mybatis如何实现新增save结束后自动返回主键id,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!m
千家信息网最后更新 2025年01月17日mybatis如何实现新增save结束后自动返回主键id
小编给大家分享一下mybatis如何实现新增save结束后自动返回主键id,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
mybatis新增save结束后自动返回主键id
1.使用场景
save操作之前实体类中id为null,save之后自动返回带id的实体类
@Override public ChartPagePanel save(ChartPagePanel entity) { UserDetails user = SecurityContextHolder.getUserDetails(); entity.setCreateUser(user.getUsername()); entity.setLastModifyUser(user.getUsername()); //entity中的id为null chartPagePanelMapper.save(entity); //经过save操作后自动返回带id的entity // savePanelManage(entity); 其中的entity带有id savePanelManage(entity); return entity; } @Transactional public void savePanelManage(ChartPagePanel entity){ if(entity.getChartPageManges()!=null && entity.getChartPageManges().size()>0) { Mapmap = new HashMap<>(); for (int i = 0; i < entity.getChartPageManges().size(); i++) { int manageId = entity.getChartPageManges().get(i).getId(); map.put("manageId", manageId); map.put("panelId", entity.getId()); chartPagePanelManageMapper.save(map); } } }
2.原理在Mybatis配置了
useGeneratedKeys="true" keyProperty="id"
insert into chart_page_panel ( `parent_id`, `position`, `name`, `create_time`, `create_user`, `last_modify_time`, `last_modify_user` ) values ( #{parentId}, #{position}, #{name}, NOW(), #{createUser}, NOW(), #{lastModifyUser} )
mybatis或者mybatis-plus中save方法返回主键值
1.mapper.xml中
方式:
useGeneratedKeys="true" keyProperty="id" keyColumn="id"
解释:
在xml中定义useGeneratedKeys为true,返回主键id的值,keyColumn和keyProperty分别代表数据库记录主键字段和java对象成员属性名
INSERT INTO adjust_bill_info(external_bill_id, warehouse_code, warehouse_name) VALUES(#{externalBillId}, #{warehouseCode}, #{warehouseName});
2.service或者dao中
注意:通过该种方式得到的结果是受影响的行数!!!!!
如果要获取主键id值,需要从传入的对象中获取!!!!!
Long id = aTranscationMapper.saveBill(adjustBillInfo);System.out.println("===========保存受影响的行数:"+id+" 保存的id值为:"+adjustBillInfo.getId());
输出结果展示:
===========保存受影响的行数:1 保存的id值为:191
mybatis-plus的insert后,返回主键id,直接通过传入的对象获取id即可!
bizApplicationFormMapper.insert(form);
System.out.println("=============="+form.getId());
以上是"mybatis如何实现新增save结束后自动返回主键id"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
对象
篇文章
影响
内容
实体
方式
结果
不怎么
代表
原理
场景
大部分
字段
属性
成员
数据
数据库
方法
更多
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
宜宾软件开发皆来青岗科技
新奇科技互联网之光
网络安全状况调查报告
软件开发中的相关术语
计算机网络安全管理开题报告
服务器招募
三丰云服务器怎么调
南京地铁网络安全招聘
延吉市网络安全宣传活动
长宁区网络营销软件开发咨询热线
网络安全大赛评选方案
邮箱怎么防范网络安全
seatable数据库
国家网络安全宣传周石家庄
网络安全福建
2020强网杯网络安全大赛
脱机处理数据库
一个软件开发公司
目前网络安全法的漏洞
dnf自己架设服务器怎么改时间
浙江大学 网络安全事件
福州学软件开发
饥荒专属服务器连接失败
电脑正在连接服务器什么意思
清代进士登科数据库
华为怎么下app软件开发
软件开发出口税收优惠政策
我的世界最新服务器缺管理员
js读数据库
共建网络安全共享网络文明手