我需要通过内部对象字段创建@EqualsAndHashCode。我有两个实体WorkPlace和Account。
简码:
***WorkPlace.java***
public class WorkPlace {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@ManyToOne(optional = false)
@NotNull
private Account account;
.......................
}
***Account.java***
public class Account {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
...............
}
我想使用 Lombok 在 WorkPlace.class 中创建 EqualsAndHashCode,类似于以下代码:
@EqualsAndHashCode(of = {"id", "account.id"})
在构建项目时,"account.id"被忽略,并通过id字段创建EqualsAndHashCode。
使用lombok是否可以做到这样的操作?
of = {field_name}
,并使用Include注释来获取您需要的所有字段。 - Filippo De AngelisonlyExplicitlyIncluded=true
。或者,排除您不想要的所有字段。随意降低getAccountId
的可见性。 - maaartinus