首页 > 其他分享 >记录一下因mybatis-plus版本不一致导致的实体主键id未赋值,新增失败问题

记录一下因mybatis-plus版本不一致导致的实体主键id未赋值,新增失败问题

时间:2023-04-20 11:15:56浏览次数:36  
标签:IdType id plus 版本 mybatis 主键

记录一下因mybatis-plus版本不一致导致的实体主键id未赋值,新增失败问题
mybatis-plus中对于id的赋值在
package com.baomidou.mybatisplus.core;
public class MybatisParameterHandler implements ParameterHandler {} 中实现
1)3.4.1版本中的实现如下,处理 IdType.ASSIGN_ID 和 IdType.ASSIGN_UUID

2)3.2.0版本中的实现如下,
package com.baomidou.mybatisplus.core;
public class MybatisDefaultParameterHandler extends DefaultParameterHandler {}

问题出现场景:位于公司后台管理系统中(项目依赖非本人搭建),因同事平时设置的数据库主键自增,id采用int类型,type=IdType.AUTO,所以未出现此问题
@ApiModelProperty("主键ID") @TableId(type = IdType.ASSIGN_ID) private Long id;
@TableId是mybatis-plus-annotation依赖中的注解,项目中使用的是3.4.0版本;说明(3.2.0的版本是没有用IdType.ASSIGN_ID的)
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-annotation</artifactId> <version>3.4.0</version> </dependency>
而mybatis-plus使用的是3.2.0的版本
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.2.0</version> </dependency>
从3.2.0的MybatisDefaultParameterHandler 方法来看,是没有对type = IdType.ASSIGN_ID的处理,所以id没有被赋值。
我将依赖都修改成3.4.0,问题解决

标签:IdType,id,plus,版本,mybatis,主键
From: https://www.cnblogs.com/seeAgain/p/17335969.html

相关文章

  • (IDEA)spring项目导入本地jar包方法和项目打包时找不到引入本地jar包的问题解决方案
    转:(IDEA)spring项目导入本地jar包方法和项目打包时找不到引入本地jar包的问题解决方案 【Maven】理解maven的6大内置属性   ......
  • IDEA 启动tomcat6项目
    目录IDEA启动tomcat6项目导入项目配置项目配置tomcatIDEA启动tomcat6项目接到一个老项目要做达梦数据库适配,老项目用的spring+hibernate,前端用jsp展示,之前用的eclipse开发,eclipse好多年没用了,用IDEA启动。导入项目一路next到底,注意选择对应jdk,我这用的是jdk6配置项目添加......
  • 记录一次使用 表达式引擎 自定义注解 还有 sql union all 实现对数据库数据提取、重组
    这样编写减少了前后端很多没必要的遍历,以及if判断并最大限度提高了代码的可变通性额外需要学习的是ORM框架下,如何接收多表(各表结构不同)操作后,sql返回的新结构的临时表问题表达式引擎用到的依赖<dependency><groupId>org.apache.commons</groupId>......
  • gcc: fatal error: cannot execute ‘cc1plus’: execvp: No such file or directory
     01、安装 HTSeq软件出现如下报错,编译失败 02、原因是没有c++编译器,解决方法:aptinstallg++##安装c++编译器 03、再次安装HTseq,报错消失。 ......
  • Day 25 25.1 Scrapy框架之全站爬虫(CrawlSpider)
    Scrapy框架之全站爬虫(CrawlSpider)在之前Scrapy的基本使用当中,spider如果要重新发送请求的话,就需要自己解析页面,然后发送请求。而CrawlSpider则可以通过设置url条件自动发送请求。LinkExtractorsCrawlSpider是Spider的一个派生类。CrawlSpider与spider不同......
  • 图计算引擎分析--GridGraph
    作者:京东科技李永萍GridGraph:Large-ScaleGraphProcessingonaSingleMachineUsing2-LevelHierarchicalPartitioning图计算框架图计算系统按照计算方式划分可分为:单机内存图处理系统,单机核外图处理系统,分布式内存图处理系统,分布式核外图处理系统。本文将详细介绍单机核......
  • Fiddler软件的安装
    1、准备好安装包,新建一个文件夹用来当安装路径,直接双击安装  ......
  • 使用mybatis-plus JDK版本过高提示警告
    1、在启动类中添加如下方法即可报警告publicstaticvoidmain(String[]args){disableWarning();//禁用警告SpringApplication.run(SecurityApplication.class,args);}//处理控制台异常publicstaticvoiddisableWarning(){......
  • K8s为啥要启用bridge-nf-call-iptables内核参数?用案例给你讲明白
    使用kubernetes遇到最多的70%问题都可以归于网络问题,最近发现如果内核参数:bridge-nf-call-iptables设置不当的话会影响kubernetes中Node节点上的Pod通过ClusterIP去访问同Node上的其它pod时会有超时现象,复盘记录一下排查的前因后因。1、问题现象集群环境为K8sv......
  • 记录IDEA的一些快捷键(用到就更新)
    Shift+Alt+↑[↓] 上下移动这行代码Ctrl+h展示当前类的继承结构Ctrl+F12  展示当前类的所有方法Ctrl+Shift+F10 运行当前程序 ......