A Brief History of J2EE

How J2EE came about is quite interesting. Java, originally named Oak, was conceived as a software language for developing applications for household appliances and other such devices. With the Internet revolution, Java gradually evolved into a language for client-side development with capabilities such as applets and JavaBeans. Along the way, several Java APIs, such as Java Database Connectivity (JDBC), were developed to address market needs for generic access and usage of resources typically required by enterprise software applications.

It was clear soon after Java's introduction that the use of Java on the client side in a browser-based systems environment faced some serious challenges, such as the latency involved in the loading of Java libraries over the Internet before a client-side Java application could start up. However, Java's relative simplicity, platform-independent architecture, and rich set of APIs as well as its Web enabled nature were strong positives for its use in enterprise software development.

This ease of use and Web enabled nature of Java led to a relatively wide adoption of Java for Web-centric development. Developers used Java technologies, such as applets, for visuals and dynamic output that could easily be added into standard HTML pages on Web sites.

Although Java applications could be run on servers, Java initially did not offer any specific capabilities for server-side use. Sun realized the potential for using Java as a language for Web-based applications and sought to adapt it for the server side via the Java Servlet specification. Once the adaptation occurred, the Web client could call into a Java program running on a remote server, and the server program could process the request and pass back meaningful results. The concept of the servlet was born and has been utilized fairly heavily for enterprise application development. Servlets, however, were never really designed to handle complex issues related to customer transactions, session concurrency, synchronization of data, and so on.

EJB, originally released as an independent specification by Sun Micro systems, was intended to simplify server-side development by providing a very large set of out-of-the-box services to handle the key enterprise application development issues.

The concept of n-tier architecture has been around a long time and has been successfully used for building enterprise-scale applications. Sun's embracement of the n-tier development model for Java, and introduction of specific functionality to permit easier server-side development of scalable Web-based enterprise applications, gave Java the critical missing ingredient it needed in this arena.

The J2EE is the result of Sun's effort to align the disparate Java technologies and APIs together into cohesive Java development platforms for developing specific types of applications. Three Java platforms currently exist. Each successive one listed can conceptually (but not necessarily technologically) be considered a superset of the previous one:

  • Java 2 Platform, Micro Edition (J2ME): Platform for the development of software for embedded devices such as phones, palm tops, and so on.

  • Java 2 Platform, Standard Edition (J2SE): Most familiar of the Java 2 platforms. It is also known as the Java Development Kit (JDK) and includes capabilities such as applets, JavaBeans, and so on.

  • Java 2 Platform, Enterprise Edition (J2EE): Platform for developing enterprise-scale applications. It is designed to be used in conjunction with the J2SE.

Figure 2-2 provides an overview of the three existing Java 2 platforms.

Figure 2-2. Overview of the Java 2 platforms


..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.9.148