聊聊:Mybatis-Plus 新增获取自增列id,这一次帮你总结好

聊聊:Mybatis-Plus 新增获取自增列id,这一次帮你总结好

编程文章jaq1232025-10-19 6:08:514A+A-

1、实体类定义

注意:@TableId(value = “id”, type = IdType.AUTO)注解中的 type = IdType.AUTO 属性标注主键为自增策略。

import lombok.Data;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;

@Data
@TableName("users")
public class User {
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @TableField("`name`")
    private String name;
}

2、解决办法

方法一

使用框架自带的insert方法。

int insert(T entity);

方法二

@Insert("insert into users(`name`) values(#{user.name})")
@Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
Integer add(@Param("user") User user);

方法三

@InsertProvider(type = UserMapperProvider.class, method = "add")
@Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
Integer add(@Param("user") User user);

UserMapperProvider类

public class UserMapperProvider {
    public String add(User user) {
        return "insert into users(id, `name`) values(#{user.id},#{user.name})";
    }
}

3、调用方法获取id说明

方法调用前:

方法调用后:


路漫漫其修远兮,吾将上下而求索

译文:在追寻真理方面,前方的道路还很漫长,但我将百折不挠,不遗余力地去追求和探索。


如果您有什么好的想法与方法,欢迎在评论区留言,我们一起讨论~

点击这里复制本文地址 以上内容由jaq123整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

苍茫编程网 © All Rights Reserved.  蜀ICP备2024111239号-21