# J2EE architecture

The Java™ 2 Platform, Enterprise Edition (J2EE) provides a standard for developing multitier, enterprise applications.

The economy and technology of today have intensified the need for faster, more efficient, and larger-scale information management solutions. The J2EE specification satisfies these challenges by providing a programming model that improves development productivity, standardizes the platform for hosting enterprise applications, and ensures portability of developed applications with an extensive test suite.

J2EE architecture supports component-based development of multi-tier enterprise applications. A J2EE application system typically includes the following tiers:

Client tier
  In the client tier, Web components, such as Servlets and JavaServer Pages (JSPs), or standalone Java applications provide a dynamic interface to the middle tier.
Middle tier
  In the server tier, or middle tier, enterprise beans and Web Services encapsulate reusable, distributable business logic for the application. These server-tier components are contained on a J2EE Application Server, which provides the platform for these components to perform actions and store data.
Enterprise data tier
  In the data tier, the enterprise's data is stored and persisted, typically in a relational database.

J2EE applications are comprised of components, containers, and services. Components are application-level components. Web components, such as Servlets and JSPs, provide dynamic responses to requests from a Web page. EJB components contain server-side business logic for enterprise applications. Web and EJB component containers host services that support Web and EJB modules.

For more information on J2EE architecture and its implicit technologies, download and read the J2EE 1.4 Specification.

Related concepts
Enterprise application projects
Application client projects
Related tasks
Creating an enterprise application project
Importing an enterprise application EAR file
Exporting an enterprise application into an EAR file
Creating an application client project
Exporting an application client project
Importing an application client JAR file