JavaBeans sind nicht immer passend, Entites werden sonst zu Dummen Datencontainern, nicht zu intelligenten Objekten.
Alles zu JavaBeans zu machen widerspricht den OO Prinzipien.
"Deprecated" steht in diesem Zusammenhang für "veraltet", keine gutes Zeichen imho bei frisch generiertem Code, bevor man dem Entwickler eine Möglichkeit bietet die er nicht nutzen sollte, gibt man sie ihm lieber nicht, kenne aber die Zwickmühle bei bidirektionalen Beziehungen.
Klar kann man mal gegen Konventionen/Prinizipien verstossen, muss halt immer abwägen, kommt eben darauf an, bei ORMs erstellt man normalerweise zuerst die Klassen, das DB Schema wird generiert, wenn man es umgekehrt macht, landet man zwangsläufig bei einer weniger OOAD Abstraktion, sondern einer Datenzentrierten, muss aber nicht schlecht sein in bestimmten Fällen.