如何立刻读取在MySQL中自动生成的主键

在写一个接口时,我们需要对两个表分别动刀,但是我们需要前一个表的主键作为下一个表的功能外键,

如果使用mybatisplus,insert完成之后便可以直接在对象中取出这个id值

如果使用mybatis,我们就需要在手写的xml文件中额外写一些代码:

<insert id="insert" useGeneratedKeys="true" keyProperty="id">
    INSERT INTO table_name (column1, column2, ...)
    VALUES (#{property1}, #{property2}, ...);
</insert>
  1. useGeneratedKeys="true" 属性表示在插入数据时要使用数据库生成的主键。这通常用于获取插入记录后数据库生成的自增主键值。

  2. keyProperty="id" 属性指定了用于存储生成的主键值的 Java 对象的属性。在这个例子中,表示将生成的主键值设置到对象的 id 属性中

 
通过上述新增的两个属性,我们可以实现下面要求
dishMapper.insert(dish);
Long dishId = dish.getId();

 

posted @ 2024-01-27 18:50  天启A  阅读(14)  评论(0)    收藏  举报