在使用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 层 先...
这里笔者使用的mybatis-plus 3.4.2版本,相关实体主键均采用自增模式。示例如下: 方式一: 准备SQL脚本: CREATE TABLE `t_order` ( `id` int NOT NULL AUTO_INCREMENT, `name` varchar(255) COLLATE utf8_bin DEFAULT NULL COMMENT '订单名称', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAU...
1、主键id,这个值不一定叫id, 叫什么都可以,只要是int,自增 2、增加完成以后,是实体类的getId(),就可以获取到,否则一直是1,插入一条数据的时候,影响的是1条。 publicinterfaceDeptMapper extends BaseMapper<Dept>{ } DeptMapper.xml application.yml 方式:(通过mybatis plus生成的不需要编写mapper文件) 1)sel...
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 ...
1.1、Mysql数据库设置ID自增情况 <insert id="insertUser" parameterType="com.crush.mybatisplus.entity.User">INSERT INTO tb_user (username,password) VALUES(#{username},#{password});<selectKey resultType="java.lang.Long" order="AFTER" keyProperty="id">SELECT LAST_INSERT_ID()</selectKey></insert...
默认情况下按照官方文档的快速开始可以快速集成MybatisPlus。 虽然MB+提供了一些注解,正常情况下除了需要创建一个Mapper继承BaseMapper,其他的不需要配置。 如果我们使用了数据库自增主键并且希望insert方法都返回主键ID,需要配置一下实体类的主键 publicclassWeb_user{@TableId(type=IdType.AUTO)privatelong user_id;priv...
// 返回主键字段id值 @Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id") @Insert("insert into t_user (name,age) values (#{name},#{age})") void insert(Student stu); 1. 2. 3. 4. 3 Mybatis Plus 中
批量插入成功了,但是id是null 在解决这个问题的过程中,我最初想实现“批量插入即可,心里默认为和插入1个一样,会有id”, 后来为了“批量插入也要返回主键id”,最后我发现,"这是不能实现的"。 mysql底层,insert values批量插入,返回的是“个数”。