2010-08-18 2 views
2

웹 응용 프로그램 dev에 새로운 인 [수정], 나는 현재하고 불안 해요 무엇을 건축하고자 특권 endusers가 (관리자) 선언적 매니저 온라인 도구를 통해 정의 할 수 있습니다 최종 사용자 프로그래밍을 포함한 전자 상거래 웹 응용 프로그램에 대한 최고의 작품아키텍처 : Java EE + JSF2에서이 웹 응용 프로그램을 실현하는 방법은 무엇입니까?

(가)
(b)의 분류 제품/서비스, 고객 유형의 의존성
(C) 제품 가격, 기간, 수량 및 부여 할인 구매

또한 관리 (고객 유형 등) 추가 최종 사용자 역할 자신의 사이트 엔티티 (고객, 판매, 수익 등)를 모니터링 할 수 있습니다.

관리자는 미리보기 자신의 사양을 할 수 있어야하고 마지막 특정 사이트 URL (시스템에 의해 지정된베이스 URL)에서에게 그들을 게시 할 수 있습니다. 최종 사용자는 결과 사이트를 탐색하여 정보를 수집하고 주문을 제출할 수 있습니다.

내 2 가지 주요한 문제는 관리자 도구에 포함 된 선언적 최종 사용자 프로그래밍에서 기인합니다. 나는 현재에 대해 궁금 해요 :

    어떻게 "즉시"선언적 형식에서 미리보기/게시 결과를 렌더링하는
  1. 및 가격 규칙 관리를 용이하게하는 유연한 가격 메커니즘을 제공하는 방법을
  2. . (1) 하나는 순수 JSF2 아약스 접근 방식 (서버 측 렌더링) 또는 JSF2 + JS (jQuery를) 아약스 접근 방식으로 갈 수에 관해서는
  • 은 (클라이언트 측에서 더 반응 할 수 있습니다) .. 하지만, 특히 jQuery가 관련되어있을 때 렌더링 구성 요소를 어떻게 실현할 수 있습니까?
  • (2)와 마찬가지로, 규칙 기반 접근법도 상상할 수 있지만 JBoss Drools와 같은 규칙 엔진 관련 서버 측 하위 시스템이 (a) 너무 "무거운" (b) 클라이언트 측 "경량"규칙 통역사 버전이 동일한 작업 (?)을 수행 할 수 있고 규칙을 제어하는 ​​데 필요한 양식을 해석하는 데 재사용 될 수 있다는 점을 고려하면 부적절합니다!
    가격 '시각화와 "편집 가능한 하이퍼 큐브 위젯"을 입력하는 것으로 추측합니다. - 접근법 또한 좋은 생각 일 수 있습니다. (., BTW 누군가가 JSF2에 대한 이러한 위젯에 대해 알고 있습니까?)

아직도 여기에 내가 경험이 많은 자바 EE 개발자들로부터 조언을 얻을 수 있다는 희망 :
당신이 전술을 해결하기 위해 사용하는 것이 자바 EE 아키텍처 좋은 방법으로 명시된 목표는 무엇입니까?

답변

1

위의 텍스트에서 암시 적으로 언급 한 다른 아키텍처 요소에 대한 구성 요소를 선택하는 것이 가장 중요합니다. 매우 일반적인 접근 방식은 응용 프로그램을 계층화하고보다 개념적인 문제로 디자인을 시작한 후 다양한 구현 기술을 평가하고 사용자의 요구에 가장 적합한 것을 결정할 수 있습니다.

데이터를 저장 하시겠습니까? 그런 다음 db-tier가 필요합니다.이 후보는 Hibernate 또는 JPA2 일 수 있습니다.

webb-app (재사용) 이외의 다른 컨텍스트에서 개발 된 비즈니스 로직이 필요한 경우, 예를 들어 웹 서비스 또는 유사한 서비스를 제공하면 비즈니스를 캡슐화하는 별도의 비즈니스 계층을 만들 수 있습니다. (종종 비즈니스 프로세스와 일치하는) 정의 된 메소드의 코드. 이런 식으로 다른 소비자, 즉 webb 앱과 webb 서비스에 동일한 로직을 사용할 수 있습니다. EJB와 SessionBeans는이 영역에 대한 일반적인 해결책이다.

프리젠 테이션 레이어에 대한 현대적인 접근 방식은 ManagedBeans와 JSF2/facelets의 조합을 사용하는 것이며 모든 프리젠 테이션 구성 요소를 직접 작성하지 않으려면 IceFaces/PrimeFaces/Richfaces와 같은 구성 요소 라이브러리를 사용할 수 있습니다. JSF 컴포넌트 라이브러리는 종종 jQuery에 의존하고 번들로 제공합니다. 그래서

아마 거 필요까지 당신을 요약하면 :

프리젠 테이션 계층 - JSF2/ManagedBeans 및 등 PrimeFaces, IceFaces, RichFaces와 같은 하나의 구성 요소 라이브러리 (http://www.primefaces.org/)

비즈니스 로직 계층은 - EJB SessionBeans은 강력한 techique (http://download.oracle.com/javaee/6/tutorial/doc/, http://seamframework.org/)

지속성 계층입니다 - 최대 절전 모드/JPA2, JPA2는 Oracle에서 EE 6 다운로드 번들로 제공됩니다.

Netbeans는 설치 및 사용이 쉬운 EE 6 용 glassfish 3 번들과 함께 다운로드를 제공합니다.

행운을 빈다.

관련 문제