X

Mybatis获取最近插入的主键

通常情况下,我们插入一条记录的mapper如下:


    @Insert("insert into experiment_info (gmt_create, gmt_modified, user_id, name, type) values (now(),now(),#{userId},#{name},#{type})")
    int saveExperimentInfo(ExperimentInfoDO infoDO);

 

但是有时候,我们需要拿到这次插入之后生成的主键应该怎么办呢? 其实很简单,只需要一句话就可以完成, 将以上的代码改为如下:

 

    @Insert("insert into experiment_info (gmt_create, gmt_modified, user_id, name, type) values (now(),now(),#{userId},#{name},#{type})")
    @Options(useGeneratedKeys = true, keyProperty = "id")
    int saveExperimentInfo(ExperimentInfoDO infoDO);

 

 

其中id是默认值,可以省略不写。

还有一种办法是,生成一个主键主动传入。

Categories: Java学习
Tags: Javamybatis
龙安_任天兵: 不忘初心,方得始终!

View Comments (1)