目录
- 问题情况:
- 原因:
- 解决方法
问题情况:
在使用 @TableId(type = IdType.AUTO)之后添加的id数字特别大
原因:
因为在第一次使用的时候没有加注解 所以myBATis自动生成了一个特别大的数字
当我们第二次加上注解之后他的id实际上还是第一次那个特别大的数字+1解决方法
修改表的自动添加值再添加
因为第一次添加的id值特别大我就把那一行给删了然后改了自增长的数字如图所示修改之后就好了
package com.tong.pojo; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @Data @NoArgsConstructor @AllArgsConstructor @TableName("tb_user") p开发者_JS开发ublic class User { @TableId(type = IdType.AUTO) //指定id类型为自增长 private Long id; private String user_name; private String password; private String name; private Integer age; private String email; }
package org.example; import com.tong.MyApplication; import com.tong.mapper.UserMapper; import com.tong.pojo.User; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes= MyApplication.class) public class TestUserMapper { @Autowired private UphpserMapper userMapper; 上面这一行报错是正常现象 @Test public void test(){ javascript User user = new User(); user.setEmail("12345.com"); user.setAge(20); user.setUser_name("caocao1"); user.setName("曹操1"); user.setPassword("123456"); android //user.setAddress("北京"); int insert = userMapper.insert(usephpr); System.out.www.devze.comprintln(insert); System.out.println(user.getId()); } }
到此这篇关于MybatisPlus使用@TableId主键id自增长无效的解决的文章就介绍到这了,更多相关MybatisPlus @TableId主键id自增长无效内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
精彩评论