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表更改为上面的配置,异常就解决了。


我是程序员娟娟,

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

分享给更多需要的同行。

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

相关推荐
伏颜.41 分钟前
Spring懒加载Bean机制
java·spring
细心的莽夫42 分钟前
集合复习(java)
java·开发语言·笔记·学习·java-ee
yours_Gabriel1 小时前
java基础:面向对象(二)
java·开发语言·笔记·学习
Enaium1 小时前
Rust入门实战 编写Minecraft启动器#3解析资源配置
java·开发语言·rust
虫小宝1 小时前
在Spring Boot中实现多线程任务调度
java·spring boot·spring
虫小宝2 小时前
如何在Java中实现PDF生成
java·开发语言·pdf
菜鸡且互啄693 小时前
在线教育平台,easyexcel使用案例
java·开发语言
八月林城3 小时前
JAVA导出数据库字典到Excel
java·数据库·excel
浅念同学5 小时前
算法-常见数据结构设计
java·数据结构·算法
杰哥在此7 小时前
Java面试题:讨论持续集成/持续部署的重要性,并描述如何在项目中实施CI/CD流程
java·开发语言·python·面试·编程