在使用MyBatis-Plus进行新增数据操作时,可以通过以下几种方式来获取插入数据后的主键ID: 1. 使用Mapper接口的方法 MyBatis-Plus的BaseMapper接口提供了insert方法,该方法在插入数据后会自动返回插入的条数。如果你希望在插入数据后获取主键ID,可以通过设置实体类的主键属性为自增,并在插入操作后从实体类中获取该属性。
userMapper.insert(user);// 获取插入数据的主键 IDLong id = user.getId(); System.out.println("id:"+ id); 怎么样,是不是非常简单呢! Service 层 Mybatis Plus 同样也封装了通用的 Service 层 CRUD 操作,并且提供了更丰富的方法。接下来,我们上手看 Service 层的代码结构,如下图: 定义Service 层 先...
1、主键id,这个值不一定叫id, 叫什么都可以,只要是int,自增 2、增加完成以后,是实体类的getId(),就可以获取到,否则一直是1,插入一条数据的时候,影响的是1条。 publicinterfaceDeptMapper extends BaseMapper<Dept>{ } DeptMapper.xml application.yml 方式:(通过mybatis plus生成的不需要编写mapper文件) 1)sel...
mybatisplus增加数据后返回主键id 1、主键id,这个值不⼀定叫id, 叫什么都可以,只要是int,⾃增 2、增加完成以后,是实体类的getId(),就可以获取到,否则⼀直是1,插⼊⼀条数据的时候,影响的是1条。public interface DeptMapper extends BaseMapper<Dept> { } DeptMapper.xml application.yml ⽅式...
mybatis-plus:mapper-locations:classpath*:mapperxml/*Mapper.xml AI代码助手复制代码 直接先看mapper.xml文件,这个insert语句实际上就是插入MouldMessage这个我定义的实体类。 <mapper namespace="com.hwz.MessageMouldMapper"><insertid="testInsert" useGeneratedKeys="true" keyProperty="id">INSERTINTOt_XXXX ...
👨💻面试官:你说Mybatis执行插入语句后可以返回主键ID吗??如果能的话,能否实现一下。 🙋我:当然是可以的,连JDBC都能做到的事情,Mybatis也能做到的。 开始敲代码... 1.1、Mysql数据库设置ID自增情况 <insert id="insertUser" parameterType="com.crush.mybatisplus.entity.User">INSERT INTO tb_...
当实体类名称和实际表名一致时,如实体名为User, 表名为user,可不用添加该注解,Mybatis Plus 会自动识别并映射到该表。 当实体类名称和实际表名不一致时,如实体名为User, 表名为t_user,需手动添加该注解,并填写实际表名称。 @TableId 主键注解
👨💻面试官:你说Mybatis执行插入语句后可以返回主键ID吗??如果能的话,能否实现一下。 🙋我:当然是可以的,连JDBC都能做到的事情,Mybatis也能做到的。 开始敲代码… 1.1、Mysql数据库设置ID自增情况 代码语言:javascript 复制 <insert id="insertUser" parameterType="com.crush.mybatisplus.entity.Us...
批量插入成功了,但是id是null 在解决这个问题的过程中,我最初想实现“批量插入即可,心里默认为和插入1个一样,会有id”, 后来为了“批量插入也要返回主键id”,最后我发现,"这是不能实现的"。 mysql底层,insert values批量插入,返回的是“个数”。
mybatisPlus写法反回新增的id 1.保存entity this.save(entity) 返回带生成的id 2.保存list this.saveOrUpdateBatch(list) 返回带生成的id return list;(返回的list中带上了保存的id)