web-dev-qa-db-ja.com

インクルードで@EqualsAndHashCodeを使用する方法-Lombok

使い方 @EqualsAndHashCodeIncludeを使用して、Java用のLombokライブラリ。

@EqualsAndHashCode.Include( )

EqualsにクラスIDを比較させる方法は?

例:

@EqualsAndHashCode.Include( )
@Table(name = "USER")
public class User
{

  @Id
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  @Column(name = "IDENTITY_USER")
  private Long identity;
}

フィールドで使用する必要があります。クラス自体で使用するものではありません。これは、次のターゲットを定義するアノテーションの定義をチェックすることで確認できます(クラスではなくフィールドとメソッド)

@Target({ElementType.FIELD, ElementType.METHOD})

使い方の例はこちら

@EqualsAndHashCode(onlyExplicitlyIncluded = true)
@Table(name = "USER")
public class User
{

  @Id
  @EqualsAndHashCode.Include()
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  @Column(name = "IDENTITY_USER")
  private Long identity;
}
2
Yassin Hajaj