- Value Object : Use when need to measure the objects' equality based on the objects' value.
- Data Transfer Object : Pass data with multiple attributes in one shot from client to server across layer, to avoid multiple calls to remote server.
- Plain Old Java Object : It's like simple class which properties, public no-arg constructor. As we declare for JPA entity.
difference-between-value-object-pattern-and-data-transfer-pattern