2015-06-07 5 views
1

В чем разница между EntityManager и DAO? Это то же самое?В чем разница между EntityManager и DAO?

+0

Контекст, пожалуйста? Вы имеете в виду на Java? В COBOL? –

+0

Я работаю на платформе JAVA EE. Модели ООП различны для разных языков программирования? –

+0

Понятие 'EntityManager' относится к определенной вещи в J2EE, скорее всего. Он может существовать или не существовать в .NET, и если это так, его можно назвать чем-то другим. Насколько я знаю, это не «шаблон ООП». –

ответ

2

EntityManager - это интерфейс, предоставляемый JPA, который предоставляет общие методы, используемые для сохранения, слияния, поиска и создания запросов для объектов.

DAO - это шаблон, используемый для выделения кода доступа к базе данных в отдельном компоненте (DAO), чтобы сервисы концентрировались на бизнес-логике, а не на низкоуровневой базе данных. Он помогает в модульном тестировании службы и в разделении обязанностей.

При использовании JPA вы обычно пишете один DAO для каждого объекта, который будет содержать весь код JPA (запросы, в основном), связанные с этим объектом. И этот DAO использует EntityManager.

+0

Отличный ответ! Благодаря! –

Смежные вопросы