2011-06-29 4 views
0

J'ai de nouveau à Hibernate! Je voulais savoir pourquoi nous avons normalement une couche de service pour hiberner. Je veux dire s'il y a les DAO, pourquoi avons-nous aussi besoin des couches de service?Hibernate Question de conception

+0

Demandez-vous pourquoi, dans votre entreprise, avez-vous toujours des couches de services avec Hibernate? Ou en général? – Nix

Répondre

1

J'utilise une couche distincte pour gérer les unités de travail/transactions. Mes DAO sont tous assez simplistes et ne traitent que l'accès direct à la base de données. Souvent, une seule tâche impliquera plusieurs interactions DAO, mais sera dans une transaction unique (mettre à jour plusieurs tables, récupérer des données et mettre à jour conditionnellement, etc.). En remontant une couche, je peux lancer une annotation @Transactional sur la tâche (en supposant que nous utilisons Spring, mais le concept reste sans) et l'encapsuler davantage.