通常,我们会把数据库中一个表的主键id设置为自增字段。

在mybatis中,当主键id是自增的情况下,添加一条记录的同时,其主键id是不能使用的,当我们取出主键id的值发现id为null,但是有时我们需要该主键,这时我们该如何处理呢?
在对应的mapper.xml中加入以下属性即可:

useGeneratedKeys="true" keyProperty="id"

示例:

<!--主要是在主键是自增的情况下使用,添加成功后可以直接使用主键值,其中keyProperty的值是对象的属性值,而不是数据库表中的字段名-->
<insert id="insertSelective" parameterType="com.xxx.dataobject.UserDo" keyProperty="id" useGeneratedKeys="true">
............
</insert>

原文链接:
https://www.cnblogs.com/zenghuilong/p/10276831.html

可供参考文章:
https://blog.csdn.net/after_you/article/details/53844908
https://www.cnblogs.com/LinBug/p/7544486.html
https://blog.csdn.net/weixin_30681121/article/details/95751083

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐