diff --git a/documentation/src/main/asciidoc/userguide/chapters/domain/entity.adoc b/documentation/src/main/asciidoc/userguide/chapters/domain/entity.adoc index d8e49fce4b..5c28d41fc8 100644 --- a/documentation/src/main/asciidoc/userguide/chapters/domain/entity.adoc +++ b/documentation/src/main/asciidoc/userguide/chapters/domain/entity.adoc @@ -257,6 +257,14 @@ include::{sourcedir}/entity/listing9.java[] As you can see the question of equals/hashCode is not trivial, nor is there a one-size-fits-all solution. +[TIP] +==== +Although using a natural-id is best for `equals` and `hashCode`, sometimes you only have the entity identifier that provides a unique constraint. + +It's possible to use the entity identifier for equality check, but it needs a workaround. +Check out https://vladmihalcea.com/2016/06/06/how-to-implement-equals-and-hashcode-using-the-entity-identifier/[this article for more details about the best way of mapping `equals` and `hashCode` using the entity identifier]. +==== + For details on mapping the identifier, see the <> chapter. [[entity-pojo-optlock]]