Pregunta

Tengo una clase de entidad y una clase de entidad de DAO.

¿Debe ser la responsabilidad de la clase DAO para crear instancias de la clase de entidad, o debe haber una clase de entidad creador / administrador que utiliza la clase DAO sólo para obtener los datos de la base de datos para crear la clase de entidad.

Gracias,

Chris

¿Fue útil?

Solución

Debe ser responsabilidad de la DAO para cargar un objeto persistente desde el almacén de datos y devolver una instancia transitoria. ¿Por qué añadir otra capa de abstracción aquí?

Para la creación de nuevas entidades, una fábrica (o ensamblador) podrían estar involucrados. Sin embargo, por lo general esto sólo se justifica cuando la creación entidad es bastante compleja. Un constructor sencilla ajusta a la ley muy bien en la mayoría de los casos.

Otros consejos

Yo suelo dejar la DAO conocimientos sobre la entidad de montaje y devolver una entidad totalmente hidratado. ¿Por qué? Debido a que, por lo general el DAO sólo existe para apoyar esa entidad. Si su función no está obligado a apoyar esa entidad o entidades relacionadas, entonces es posible que desee ver en una capa intermedia.

Estoy asumiendo que usted está hablando de una entidad persistente y algo que logra que la persistencia. En mi opinión, no hay ningún valor en el uso de una fábrica para simplemente crear el POJO. Utilizar medios convencionales y luego usar un DAO, un EntityManager, lo que, para hacer frente a la persistencia. Creo que el punto clave es no dejar que la estrategia de persistencia / purga de aplicación más allá de su API de negocio.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top