需求背景:当插入一条数据,下一步的操作需要使用上一步生成的主键id
model模型:chapter.java
@Getter
@Setter
public class Chapter extends BaseModel {
// 主键id
@TableId(value = "id", type = IdType.AUTO)
private Long id;
// 章节号
private String chapterNo;
// 章节标题
private String title;
// 阅读数
private Integer viewCount;
// 点赞数
private Integer voteCount;
// 阅读增长
private Integer viewIncrease;
// 点赞增长
private Integer voteIncrease;
// 排序
private Integer sort;
// 外键:父章节id
private Integer fatherChapterId;
// 外键:所属教程的id
private Integer CourseId;
}
数据库的操作
// 属性拷贝,生成chapter实体(注意这个时候不包含主键id)
Chapter chapter = BeanCopyUtil.copy(bo, Chapter.class);
// 插入chapter数据
this.getBaseMapper().insert(chapter);
// 直接在这次之后,从实体中取出生成的id
Long id = chapter.getId();
debug查看,确实取出了生成的id主键