2011-11-28 4 views
3

나는 Hibernate와 JSF를 사용하여 프로젝트를 개발 중이다. 내 질문은 :JSF 형식의 Hibernate POJO

내 backing bean에서 Hibernate POJO를 직접 조작 할 수 있습니까? 나는. 내 양식에 #{mybackingBean.myPOJO.propertyName}을 참조 할 수 있습니까?
에서 findAll(), save(), findById(id)과 같은 메소드를 호출 할 수 있습니까?

이 좋은 디자인인가요? 합병증이 있으면 알려주세요.

답변

3

내 백킹 빈에서 Hibernate POJO를 직접 조작 할 수 있습니까?

예, 그렇게 할 수 있습니다.


나는

예, 그렇게 할 수있는, findById 메소드 (ID)) (저장) findall은 (같은 방법을 호출 할 수 있습니다. 그러나 나는 POJO가 아닌 service/DAO 클래스에서 그러한 메소드를 볼 것으로 기대한다.


이 좋은 디자인인가 또는 합병증이있는 경우

는 기능/비즈니스 요구 사항에 따라 달라집니다. 데이터 모델을 기반으로 JSF 뷰를 설계해야하는 경우 POJO를 그대로 사용할 수있다. 그러나 데이터 모델과 반드시 ​​1 : 1로 맞출 필요가없는 비즈니스 모델을 기반으로 JSF 뷰를 디자인해야하거나 데이터 레이어를 완전히 추상화하려는 경우 (즉, 최대 절전 모드는 단순히 "구현 세부 사항" Plain JDBC 나 현대의 JPA와 교환 할 수 있어야한다), POJO에서 /로 매핑되는 DTO가있는 추상 추상 레이어를 도입 한 다음 JSF 측에서 DTO 만 사용하면된다. 어떤 방법 으로든 JSF 백업 빈에서 POJO/DTO를 분해하지 말고 전체 엔터티를 속성으로 만들고 #{bean.entity.property}으로 사용하면됩니다.