【问题标题】:Lombok @Builder with Inheritance and JPA具有继承和 JPA 的 Lombok @Builder
【发布时间】:2020-10-20 13:23:54
【问题描述】:

我有这门课:

@Entity
@Table(name = "PERSONNE")
@Inheritance(strategy = InheritanceType.JOINED)
@NoArgsConstructor
@AllArgsConstructor
@Data
@SuperBuilder
@ToString
@EqualsAndHashCode(of = { "personneId" })
public class Personne implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @Column(name = "PERSONNE_ID")
    protected Long personneId;

}

还有这个

@Entity
    @Table(name = "DISSIDENT")
    @PrimaryKeyJoinColumn(name = "PERSONNE_ID")
    @Data
    @SuperBuilder
    @NoArgsConstructor
    @AllArgsConstructor
    @ToString(callSuper = true)
    @EqualsAndHashCode(callSuper = true)
    public class Dissident extends Personne {
    
        private static final long serialVersionUID = 1L;
    
    }

但是当我运行测试时,我得到了这个错误:

java: constructor Dissident() is already defined in class com.bar.peris.model.Dissident

【问题讨论】:

  • 你不必在 Dissident 中实现 Serializable

标签: java jpa lombok


【解决方案1】:

尝试改变@NoArgsConstructor 的顺序 @AllArgsConstructor。除非定义了构造函数,否则类默认具有无参数构造函数。

【讨论】:

    猜你喜欢
    • 2020-08-22
    • 1970-01-01
    • 2021-11-21
    • 2018-02-06
    • 2015-10-01
    • 2020-07-18
    • 2016-03-18
    • 2016-01-25
    • 1970-01-01
    相关资源
    最近更新 更多