mybatis如何实现新增save结束后自动返回主键id
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,小编给大家分享一下mybatis如何实现新增save结束后自动返回主键id,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!m
千家信息网最后更新 2026年11月01日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安全错误
数据库的锁怎样保障安全
咖啡豆
互联网科技股
互联网科技公司经营范围
今日互联网科技
互联网科技作文
广州互联网络科技有限公司
奇酷互联网络科技公司
互联网科技英文翻译
互联网科技中介
互联网金融科技公司干啥的
互联网媒体平台算高科技产业
深圳市优智互联网科技有限公司
长沙互联网科技
互联网科技实习生岗位
互联网与数字科技关系
2021世界互联网领先科技成果发布
扫呗互联网科技有限公司
互联网科技接地气
米泉互联网科技专业怎么样
数字互联网科技有限公司
互联网科技海报
百单网互联网科技有限公司
汇久创客互联网科技
衡水科技产业互联网平台
互联网科技寓意
徐州市互联网科技有限公司
银行科技岗属于互联网吗
互联网科技品牌
互联网科技创新方面的资料
伍佰万互联网科技是干嘛的