我是靠谱客的博主 碧蓝期待,最近开发中收集的这篇文章主要介绍springboot jpa id 自增问题解决,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

报错如下

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

网上的很多办法都是在主键上添加 下面的注解即可解决,但是我试了很多次还是不行,仔细看了下代码,原来IDEA 自作多情的给你加了  @Id 注解到 getId() 方法上,导致Id 重复,删除这个地方即可

@GeneratedValue(strategy = GenerationType.AUTO)

完整可用代码如下:

package com.kk.entity;


import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.lang.annotation.Native;

@Entity
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)    // 这里的注解一定要添加
    private Long id;
    private String name;
    private int age;

    public void setId(Long id) {
        this.id = id;
    }

//    @Id   这里的注解一定要去掉,只保留成员变量上的注解即可
    public Long getId() {
        return id;
    }

    public User() {
    }

    public User(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + ''' +
                ", age=" + age +
                '}';
    }
}

再次运行即可解决问题

最后

以上就是碧蓝期待为你收集整理的springboot jpa id 自增问题解决的全部内容,希望文章能够帮你解决springboot jpa id 自增问题解决所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部