通常,我们会把数据库中一个表的主键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

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐