- 问:MybatisPlus新增数据时怎么返回新增数据的id?
- 答:当插入操作执行后,MyBatis Plus会自动获取生成的ID并将其设置到传入的实体类对象的id属性中。
- 当然,这需要你的表字段ID是自增的
实体类代码
public class Sites {
private Integer id;
private String SiteName;
private String SiteUserId;
private LocalDateTime AddDateTime;
}
测试代码
@Test
void AddId() {
Sites addsites = new Sites();
addsites.setSiteName("ceshi");
addsites.setSiteUserId("5");
addsites.setAddDateTime(LocalDateTime.now());
System.out.println(sitesService.save(addsites));
System.out.println(addsites);
}
代码运行结果
==> Preparing: INSERT INTO sites ( SiteName, SiteUserId, AddDateTime ) VALUES ( ?, ?, ? )
==> Parameters: ceshi(String), 5(String), 2024-09-11T15:57:34.408(LocalDateTime)
<== Updates: 1
Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@6dd36ab6]
true
Sites(id=7, SiteName=ceshi, SiteUserId=5, AddDateTime=2024-09-11T15:57:34.408)
Sites(id=7, SiteName=ceshi, SiteUserId=5, AddDateTime=2024-09-11T15:57:34.408)
- 这里的
id=7
就是新插入数据的ID - 当然,这需要你的表字段ID是自增的