在MyBatis-Plus中,插入数据并返回主键ID是一个常见的需求。以下是详细的步骤和代码示例,展示如何实现这一功能: 1. 在MyBatis-Plus的Mapper接口中定义插入方法 首先,你需要在Mapper接口中定义一个插入方法。这个方法通常会继承BaseMapper接口,该接口已经包含了常用的CRUD方法,包括插入方法。但如果你需要自定义一些行为(...
user.setGender(1);booleanisSuccess=userService.save(user);//返回主键ID Long id=user.getId(); System.out.println("isSuccess:"+isSuccess); System.out.println("主键 ID: "+id); savaBatch(Collection) 伪批量插入,注意,命名虽然包含了批量的意思,但这不是真的批量插入,不信的话,我们来实际测试一下:...
mybatis plus 增加数据后 返回主键id 1、主键id,这个值不一定叫id, 叫什么都可以,只要是int,自增 2、增加完成以后,是实体类的getId(),就可以获取到,否则一直是1,插入一条数据的时候,影响的是1条。 publicinterfaceDeptMapper extends BaseMapper<Dept>{ } DeptMapper.xml application.yml 方式:(通过mybatis p...
userGenerateKeys告诉mybatis使用自增主键,keyProperty指定这个主键名称叫id。 然后再mapper接口定义这个方法 LongtestInsert(MessageMould messageMould); AI代码助手复制代码 调用这个插入语句,information这个实例时没有定义id,创建时间这些字段的,输出结果是数据表修改条数,这里插入一条,所以返回1。 System.out.println(me...
👨💻面试官:你说Mybatis执行插入语句后可以返回主键ID吗??如果能的话,能否实现一下。 🙋我:当然是可以的,连JDBC都能做到的事情,Mybatis也能做到的。 开始敲代码... 1.1、Mysql数据库设置ID自增情况 <insert id="insertUser" parameterType="com.crush.mybatisplus.entity.User">INSERT INTO tb_...
* 测试插入数据获取主键 */ @Test public void testInsertReturnId() { Employee employee = new Employee(); employee.setName("霸道获取主键"); employee.setAge(23); employee.setEmail("123@163.com"); employee.setGender(1); int result = employeeMapper.insert(employee); ...
对于不支持 JDBC 的 getGeneratedKeys 方法的数据库,我们可以使用 SELECT LAST_INSERT_ID() 函数获取插入记录的主键 ID。在 MyBatis 中,我们可以通过设置 useGeneratedKeys 和 keyProperty 属性来使用该方法。设置 useGeneratedKeys 属性 在配置文件中,我们可以在 insert 元素中设置 useGeneratedKeys 属性,并将其值设为 ...
如果我们使用了数据库自增主键并且希望insert方法都返回主键ID,需要配置一下实体类的主键 publicclassWeb_user{@TableId(type=IdType.AUTO)privatelong user_id;privateString user_tel;privateString user_pwd;privateLong createtime;privateLong modifytime;privateLong last_visit_time;} ...
后来为了“批量插入也要返回主键id”,最后我发现,"这是不能实现的"。 mysql底层,insert values批量插入,返回的是“个数”。 目前,不知道怎么去证实我的猜测。 最后,附上单个插入的sql <insert id="add" keyProperty="id" useGeneratedKeys="true">