Tengo un objeto Person que tiene 20 campos y está almacenado en dynamoDB. Quiero crear un nuevo objeto Person basado en alguna entrada, verifique si el mismo objeto existe en la base de datos o no. Si existe, quiero comparar los 2 objetos sobre la base de 19 fields out of 20 . El campo a ignorar es una verificación de bandera booleana.
Estoy usando Lombok @Data para generar el método de igualdad.
¿Hay alguna manera de hacer esto sin tener que escribir un método equals anulado completo yo mismo?
También puede usar @EqualsAndHashCode de Lombok junto con una exclusión.
@EqualsAndHashCode public class MyObject{ @EqualsAndHashCode.Exclude Object fieldToExclude; }En lugar de elegir cuáles excluir, también puede optar por elegir los que desea incluir así. Todo lo que no esté anotado con Incluir no se usará en la implementación de equals & hashcode.
@EqualsAndHashCode(onlyExplicitlyIncluded = true) public class MyObject{ @EqualsAndHashCode.Include Object fieldToInclude; }