이 절에서는 그림 2–4에 표시된 네 가지 논리적 계층에 대해 간략하게 설명합니다. Java 2 Platform, Enterprise Edition( J2EETM 플랫폼) 구성 요소 모델을 사용하여 구현한 응용 프로그램 구성 요소를 설명합니다. 그러나 CORBA와 같은 다른 분산된 구성 요소 모델에서도 이 구조를 지원합니다.
클라이언트 계층. 클라이언트 계층은 최종 사용자가 사용자 인터페이스를 통해 직접 액세스하는 응용 프로그램 논리로 구성됩니다. 클라이언트 계층의 논리에는 브라우저 기반 클라이언트, 데스크탑 컴퓨터에서 실행하는 Java 구성 요소 또는 휴대용 장치에서 실행하는 Java 2 Platform, Micro Edition(J2METM 플랫폼) 모바일 클라이언트가 포함될 수 있습니다.
프리젠테이션 계층. 클라이언트 계층에 전달할 데이터를 준비하는 응용 프로그램 논리로 구성되며 백엔드 비즈니스 논리로 전달할 클라이언트 계층의 요청을 처리합니다. 표현 계층의 논리는 일반적으로다음과 같은 J2EE 구성 요소Java Servlet 구성 요소 또는HTML 또는 XML 포맷으로 전달하기 위해 데이터를 준비하거나 또는 처리를 위해 요청을 수신하는 JSP 구성 요소로 구성됩니다. 이 계층은 비즈니스 서비스 계층의 비즈니스 서비스에 대한 개인화되고 보안된 사용자 정의 액세스를 제공할 수 있는 포털 서비스를 포함할 수도 있습니다.
비즈니스 서비스 계층. 비즈니스 서비스 계층은 비즈니스 처리, 비즈니스 규칙 구현, 여러 사용자 조정, 외부 자원(예: 데이터베이스, 레거시 시스템) 관리 등과 같은 응용 프로그램 기본 기능을 수행하는 논리로 구성됩니다. 일반적으로 이 계층은 J2EE 분산 구성 요소 모델을 따르는 밀접하게 연결된 구성 요소(예: EJB구성 요소 또는 Message-Driven Bean으로 구성됩니다. 개별 J2EE 구성 요소를 어셈블하여 인벤토리 서비스 또는 세금 계산 서비스와 같은 복잡한 비즈니스 서비스를 전달할 수 있습니다. 개별 구성 요소 및 서비스 어셈블리를 서비스 지향 구조 모델 내에서 SOAP(Simple Object Access Protocol) 인터페이스 표준을 따르는 느슨하게 연결된 웹 서비스로 캡슐화할 수 있습니다. 또한, 비즈니스 서비스를 엔터프라이즈 Calendar Server 또는 메시징 서버와 같은 독립 실행형 서버로 빌드할 수 있습니다.
데이터 계층. 데이터 계층은 비즈니스 논리에서 사용하는 지속성 있는 데이터를 제공하는 서비스로 구성됩니다. 데이터는 데이터 관리 시스템에 저장된 응용 프로그램 데이터이거나 LDAP(Lightweight Directory Access Protocol) 데이터 저장소에 저장된 자원 및 디렉토리 정보일 수 있습니다. 또한 데이터 서비스에는 외부 소스에서 공급되는 데이터나 레거시 컴퓨팅 시스템에서 액세스 가능한 데이터가 포함될 수도 있습니다.