Session: How to Customize the Identity Property Lookup for Entities
The client must know which property of your entity is considered as an identity. By default, it always looks for the id
field (case-sensitive). This behavior can be changed by overwriting one of our conventions called findIdentityProperty
.
Syntax
public void setFindIdentityProperty(Function<PropertyDescriptor, Boolean> findIdentityProperty);
PropertyDescriptor
will represent the property of a stored entity, and return value (bool) will indicate if given member is an identity property.
Example
The simplest example would be to check if the property name is equal to 'Identifier'.
store.getConventions().setFindIdentityProperty(property -> "Identifier".equals(property.getName()));