mybatis如何实现新增save结束后自动返回主键id
发表于:2025-11-14 作者:千家信息网编辑
千家信息网最后更新 2025年11月14日,小编给大家分享一下mybatis如何实现新增save结束后自动返回主键id,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!m
千家信息网最后更新 2025年11月14日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) { Map map = 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安全错误
数据库的锁怎样保障安全
总部在北京的互联网科技公司
list变成数据库中in
少女前线的服务器有几个
学生软件开发测试项目总结
数据库插件产品
教务管理系统的设计与实现数据库
农村不动产数据库建设技术报告
数据库事物数量
福清元洪在线软件开发公司
两个服务器网络拓扑图
智慧城市 网络安全建设
广东工业大学网络安全学院招生
嘉定区银联数据库服务商销售
地下城手游服务器出现错误
网络安全微信平台宣传片
个人信用数据库已经覆盖
浙大有网络安全
数据库除商
苏州墅聚互联网科技有限公司
沉迷网络安全教育课件
web数据库的应用案例分析
数据库插件产品
ansys软件开发者
两个服务器网络拓扑图
数据库字段的设置如何查看
浙江省教育网络安全宣传视频
南宁网络安全公司多吗
itunes服务器过期
如何服务器管理器添加角色
嗨皮咳嗽服务器裸连