The previous section described the core technology components of the J2EE platform, such as servlet,JSP,EJB,JDBC,and JMS. In this section,we take a look at the J2EE architecture model and describe other aspects of the J2EE platform that complete the platform definition.
The J2EE architecture is a multitiered architecture.
The J2EE architecture consists of the following tiers:
Java 2 Standard Edition
J2SE is the underlying base platform for J2EE, hence a brief discussion on the J2SE platform is relevant to the J2EE platform. The J2SE platform includes two deliverables:
J2SE SDK, formerly the JDK, is the Java programming language's core API set. J2SE provides the Java language functionality as well as the core libraries required for Java development. The core libraries are the classes within the java.* packages. In addition, J2SE provides auxiliary interfaces and libraries as extensions. It makes these standard extensions available as javax.* packages.
J2SE includes tools and APIs for developing applications with graphical user interfaces(GUIs),database access,directory access,Common Object Request Broker Architecture(CORBA),fine-grained security, input/output functions,and many other functions. See Table .
J2EE Application Components and Containers
The J2EE component container supports application components in the J2EE platform. A container is a service that provides the necessary infrastructure and support for a component to exist and for the component to provide its own services to clients. A container usually provides its services to the components as a Java compatible runtime environment.
The core application components in the J2EE platform are as follows:
EJB components, or enterprise beans, come in two types: session beans and entity beans. Session beans are enterprise beans that are suitable for processing or workflow. Session beans come in two flavors: stateful and stateless. A stateful session bean retains client state between method invocations. A stateless session bean does not retain client-specific state between client-invoked methods. Stateless session beans are used when no state needs to be stored between method invocations, and they may offer performance benefits over stateful session beans, which must be used when some state needs to be retained between invocations. Session bean instances pertain to a single user session and are not shared between users.
Entity beans are used when a business component needs to be persisted and shared among multiple users. Entity bean persistence can be managed in two ways: bean-managed persistence(BMP) and container-managed persistence(CMP). BMP is used when the bean developer implements all mechanisms for persisting the state in the bean. CMP is used when the bean developer does not implement the persistence mechanisms in the bean. Instead,the bean developer specifies the necessary mapping between the bean attributes and the persistent storage and lets the container do the job.
The core focus of the J2EE patterns in this book is the design and architecture of applications using servlets, JSPs, and enterprise bean components.
The J2EE platform specifies the following standard services that every J2EE product supports. These services include APIs, which every J2EE product must also provide to application components so that the components may access the services.
J2EE Platform Roles
The J2EE platform uses a set of defined roles to conceptualize the tasks related to the various workflows in the development and deployment life cycle of an enterprise application. These role definitions provide a logical separation of responsibilities for team members involved in the development,deployment,and management of a J2EE application. See Figure 3.
J2EE platform roles
The J2EE roles are as follows:
An application assembler puts a J2EE application together for deployment, and at the same time provides the assembly and deployment instructions in special files called deployment descriptors. The J2EE specification defines deployment descriptors as the contract between the application assembler and the deployer.
Deployment descriptors are XML documents that include all the necessaryconfiguration parameters required to deploy the J2EE application or J2EEcomponents.Such configuration parameters specify external resourcerequirements,security requirements, environment parameters, and othercomponent-specific and application-specific parameters. The deployer may use a deployment tool provided by the J2EE product provider to inspect,modify,customize,and add configuration parameters in these deploymentdescriptors to tailor the deployment to the capabilities of the deploymentenvironment.
Deployment descriptors offer flexibility for the development and deployment of J2EE application components by allowing changes to configurations and dependencies as needed during the different application phases: the development,deployment, and administration phases. Much of this flexibility is due to descriptors defining parameters in a declarative fashion,rather than having the parameters be embedded in the program code.
J2EE Related Interview Questions
|Java Script Interview Questions||Adv Java Interview Questions|
|J2SE Interview Questions||Core Java Interview Questions|
|Java Struts Interview Questions||Hibernate Interview Questions|
|JavaServer Faces (JSF) Interview Questions||Java 8 Interview Questions|
|JavaFX Interview Questions||NHibernate Interview Questions|
|Spring MVC Framework Interview Questions||The Java Debugger (JDB) Interview Questions|
J2ee Platform Overview
Presentation Tier Design Considerations And Bad Practices
Business Tier Design Considerations And Bad Practices
J2ee Patterns Overview
Presentation Tier Patterns
Business Tier Patterns
Integration Tier Patterns
Epilogue J2ee Patterns Applied
All rights reserved © 2018 Wisdom IT Services India Pvt. Ltd
Wisdomjobs.com is one of the best job search sites in India.