Я новичок в JPA и CDI, и я пытаюсь создать корпоративное приложение, используя эти фреймворки.JPA CDI Injecting DAO в Entity
Получаю, как я могу вводить в фасоль и держать все в порядке и без гражданства. Я также понимаю, что JPA загружает отношения и т. Д. Для меня, так что мне больше не нужно об этом беспокоиться. Я все еще использую свои DAO для конкретных методов поиска и, конечно, для создания новых объектов.
Я понимаю, что я не хочу вводить материал в мои объекты, поскольку они управляются JPA, и мне нужно использовать ключевое слово new
для создания нового объекта (вместо загрузки).
Я использую для управления моими объектами с другими классами, например, если у нас есть Пользователь и группа, я использую компонент без состояния для управления группой (создаем новые, нахожу и т. Д.), И эта фаза без состояния использует мой DAO для извлечения и отправки данных.
Я использую объект Group для управления пользователями (может быть, это неправильно?), Но я не хочу вводить DAO в группу, поскольку это сущность. Я знаю, что в этом дизайне что-то не так, но я не могу найти для этого наилучшую практику.
Должны ли все классы управления быть EJB? Я привык создавать классы домена для своей логики, должен ли я отбросить эту концепцию, поместить всю свою логику в EJB и использовать Entities для хранения данных?
На данный момент моя группа имеет отношение (список) и UserDao, который содержит entitymanager. Каков был мой вопрос, должен ли мой класс Group иметь UserDao или должен ли я иметь EJB, управляющий Dao? Также должен ли я ставить свою логику в EJB вместо моих сущностей? –
Rob