Necesito saber si es posible agregar algunos atributos y comportamientos a alguna entidad POJO JPA (usando hibernate proveedor) extendiéndolo, y luego hacer que entityManager devuelva objetos extendidos en su lugar entitys de poco POJO, como los siguientes ejemplos:Extender entidad JPA para agregar atributos y lógica
POJO APP Entidad Clase
@Entity
@Table("test")
public class Test implements Serializable {
}
clase extendida
public class ExtendedTest extends Test {
...
}
Captación de objetos extendidos de Clase
List<ExtendedTest> extendedList = entityManager.createNamedQuery("ExtendedTest.findByFoo").setParameter("foo", "bar").getResultList();
La otra manera es posible que estoy evaluar se extiende funcionalidad con una entidad compuesta y delegar todos los setters y getters, pero esto podría significar un montón de trabajo con enormes tablas:
public class ExtendedTest2 {
private Test test;
public ExtendedTest2(Test test) {
this.test = test;
}
public getFoo() {
return test.getFoo();
}
public getBar() {
return test.getBar();
}
...
}
Cualquier sugerencia será muy apreciada.
No creo que es posible a medida que felizmente puede poner su lógica y otros atributos de la clase de entidad. – dcernahoschi
De hecho, puedo agregar otros atributos y lógica a mi clase de entidad pero no "felizmente", mi idea es mantener entidades como POJO y mantener solo los atributos de representación de tabla, de hecho, es precisamente por eso que creo esta pregunta en primer lugar. – jmoreira