hibernate实现ID序列自增,异常处理

目录

一、问题描述

二、问题解析


一、问题描述

明明数据库表设置了id自增,为啥添加数据时,会抛出异常呢?

具体内容如下:

(1)控制台异常打印如下

org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save()

(2)数据库表

(3)entity表

复制代码
public class UEntity {

    @Id
    private Long id;

    ......
}

二、问题解析

hibernate 是通过 entity 表映射来访问数据库表的。

如果 entity 表映射配置不正确,就会抛出这样的异常。

所以,既然数据库表配置了自增,那么就是 entity 表配置的问题。

entity表正确配置

public class UEntity {

@Id

@GeneratedValue(strategy = GenerationType.IDENTITY)

private Long id;

......

}

所以,entity表更改为上面的配置,异常就解决了。


我是程序员娟娟,

致力将工作中遇到的问题和解决方案记录下来,

分享给更多需要的同行。

如果对你有帮助,不妨点个关注吧!

相关推荐
四谎真好看4 小时前
Java 学习笔记(进阶篇2)
java·笔记·学习
上官浩仁4 小时前
springboot ioc 控制反转入门与实战
java·spring boot·spring
叫我阿柒啊5 小时前
从Java全栈到前端框架:一位程序员的实战之路
java·spring boot·微服务·消息队列·vue3·前端开发·后端开发
mqiqe5 小时前
架构-亿级流量性能调优实践
java·架构
野犬寒鸦6 小时前
力扣hot100:旋转图像(48)(详细图解以及核心思路剖析)
java·数据结构·后端·算法·leetcode
七夜zippoe6 小时前
AI+Java 守护你的钱袋子!金融领域的智能风控与极速交易
java·人工智能·金融
岁忧6 小时前
(LeetCode 面试经典 150 题) 200. 岛屿数量(深度优先搜索dfs || 广度优先搜索bfs)
java·c++·leetcode·面试·go·深度优先
liliangcsdn7 小时前
结合prompt分析NodeRAG的build过程
java·服务器·人工智能·数据分析·知识图谱
黑色的山岗在沉睡7 小时前
LeetCode 189. 轮转数组
java·算法·leetcode