Спящий POJO в форме JSF - PullRequest
       5

Спящий POJO в форме JSF

3 голосов
/ 28 ноября 2011

Я занимаюсь разработкой проекта с использованием Hibernate и JSF.Мой вопрос:

Могу ли я напрямую управлять Hibernate POJO из моего бина?Т.е. в своей форме я могу ссылаться на #{mybackingBean.myPOJO.propertyName}?
С myBackingBean, могу ли я вызывать методы типа findAll(), save(), findById(id)?

Это хороший дизайн или если есть какие-то сложности, пожалуйста, посоветуйте мне.

1 Ответ

3 голосов
/ 28 ноября 2011

Могу ли я напрямую манипулировать POJO Hibernate из моего бина?

Да, вы можете это сделать.


можно ли вызывать такие методы, как findAll (), save (), findById (id)

Да, вы можете сделать это,Однако я ожидаю увидеть эти методы в классе обслуживания / DAO, а не в POJO.


Является ли это хорошим проектом или существуют какие-либо сложности

Зависит от функциональных / бизнес-требований.Если вам необходимо спроектировать представления JSF на основе модели данных, то вы часто можете просто использовать POJO как есть.Однако если вам необходимо спроектировать представления JSF на основе бизнес-модели, которая не обязательно соответствует 1-к-1, с моделью данных, или если вы хотите полностью абстрагировать слой данных (т. Е. Hibernate - это просто «деталь реализации»)и предполагается, что он может быть заменен на Plain JDBC или современный JPA), тогда вам часто нужно вводить дополнительный абстрактный слой с DTO, которые отображаются из / в POJO, а затем использовать только те DTO на стороне JSF.В любом случае, вы не должны взрывать POJO / DTO в компоненте поддержки JSF, а просто сделать всю сущность свойством и использовать его как #{bean.entity.property}.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...