I feel like so much effort is spent trying to solve problems that just aren't problems.
Creating simple data objects (or what we used to call Java Beans) is ready to do - especially in a modern IDE. It's also simple to understand what is happening in one and different take very long to read at all.
I can count on the fingers of one hand the number of times I've actually needed to write a hash or equals method.
But the solution to this, in my opinion, non problem is to use a highly inflexible tool that only works in a subset of cases - e.g. when it's ok for your data objects to be immutable.