Disons que j'écris une entité JPA. Une entité très simple. Elle a 3 propriétés :
public class MenuItem {
@Id
@GeneratedValue
private Long menuItemId;
@Column(nullable = false)
private String name;
@Column(nullable = false)
private Type type;
@OneToOne(cascade = {CascadeType.ALL})
@JoinColumn(name = "colorId")
private Color color;
}
Maintenant, disons que j'ai besoin de remplacer son equals
/ hashcode
méthodes. Selon cette suggestion Mise en œuvre de equals() et hashCode() Je dois utiliser une sorte de "Business key equality". Mais j'ai des doutes, qu'est-ce que je dois considérer comme une clé "métier" ici. Doit-il s'agir de toutes les propriétés, à l'exception de ID
ou Color
peut en être exclu. Cela ne me semble pas clair. Je serais reconnaissant si quelqu'un pouvait m'expliquer davantage sur ce sujet.