Mybatis-Plus 新增獲取自增列id方式
新增獲取自增列id
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說明
方法調用前:
方法調用後:
解決id自增方法
在pojo文件中id加入
@TableId(value = “id”,type = IdType.AUTO)
application.yml中加入:
global-config: db-config: id-type: auto
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- mybatis plus更新字段為null處理方法
- mybatis-plus 如何使用雪花算法ID生成策略
- 詳解mybatis插入數據後返回自增主鍵ID的問題
- MyBatis註解開發-@Insert和@InsertProvider的使用
- Mybatis Plus使用@TableId之坑及解決