mybatisplus保存数据返回id(mybatisplus保存数据返回)
简介:在使用MyBatisPlus进行数据操作的过程中,经常会遇到需要保存数据并返回自动生成的id的情况。本文将介绍如何使用MyBatisPlus进行数据保存并返回id的方法。
一、MyBatisPlus保存数据
MyBatisPlus提供了很多便捷的数据操作方法,其中保存数据的方法为insert,具体使用方法如下:
```java
User user = new User();
user.setName("Tom");
user.setAge(20);
user.setSex("male");
userMapper.insert(user);
```
上述代码中,我们创建了一个User对象,设置了其属性值,并通过userMapper.insert方法进行了保存。
二、MyBatisPlus返回自动生成的id
MyBatisPlus中保存数据默认是不会返回id的,但是我们可以通过一些特殊的方式实现返回id的功能。
1.使用MySQL的LAST_INSERT_ID()函数
MySQL提供了一个名为LAST_INSERT_ID()的函数,它可以返回刚刚插入的数据生成的id。我们可以通过以下方法来获取:
```java
User user = new User();
user.setName("Tom");
user.setAge(20);
user.setSex("male");
userMapper.insert(user);
Long id = user.getId();
```
这段代码中,我们通过userMapper.insert方法进行了数据保存,保存完成后我们可以直接通过user.getId()获取自动生成的id。
需要注意的是,使用该方法时只适用于MySQL数据库。
2.使用MybatisPlus自带的主键生成策略
MyBatisPlus提供了多种主键生成策略,其中雪花算法是一种较为常用的策略。我们可以通过如下代码来使用雪花算法生成id,并将其作为主键保存到数据库中:
```java
User user = new User();
user.setName("Tom");
user.setAge(20);
user.setSex("male");
userMapper.insert(user);
Long id = user.getId();
```
通过以上操作,我们可以在保存数据时自动生成id并将其存入数据库中。
三、总结
通过本文,我们了解了MyBatisPlus中保存数据的方法以及如何返回自动生成的id。注意,虽然返回id的方法不止上述两种,但是它们都属于不同的场景和需求,读者可以根据实际需要进行选择和使用。