小编Ant*_*ers的帖子

实体类没有指定主键

我有一个实体类,它从四级继承继承,其中顶级父级定义主键(@Id),当我收到此错误时,我无法弄清楚我做错了什么:

实体类 [D 类] 没有指定主键。它应该定义 @Id、@EmbeddedId 或 @IdClass。如果您使用任何这些注释定义了 PK,请确保您的实体类层次结构中没有混合访问类型(注释的字段和属性)。

这是层次结构:

A->B->C->(实体)D

这是我的非实体类,它将值赋予其子级​​:

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;

@MappedSuperclass
public class A implements Serializable {
@Id
@GeneratedValue
protected Long id;
@Temporal(javax.persistence.TemporalType.TIMESTAMP)
protected Date deleted;

 public Date getDeleted() {
    return deleted;
 }

 public void setDeleted(Date deleted) {
    this.deleted = deleted;
 }

 public Long getId() {
    return id;
 }

 public void setId(Long id) {
    this.id = id;
 }
}
Run Code Online (Sandbox Code Playgroud)

这是它的孩子之一:

@MappedSuperclass
public abstract class B extends A implements Serializable {

}

B->C …
Run Code Online (Sandbox Code Playgroud)

java jpa payara javax

5
推荐指数
1
解决办法
5295
查看次数

标签 统计

java ×1

javax ×1

jpa ×1

payara ×1