Monday, 4 February 2013

INTRODUCTION TO J2EE | Java J2EE Tutorial pdf

INTRODUCTION TO J2EE

Today, Java is one of the most mature and commonly used programming languages for building enterprise software. The evolution of Java from a means of developing applets to be run in browsers, to a programming module capable of driving today is enterprise applications has been remarkable. Over the years, java has evolved into three different platform editions, each addressing a distinct set of programming needs;
=> The Java 2 Platform , Standard Edition (J2SE) :
This is most commonly used of these java platforms, consisting of a runtime environment and a set of API’s for building a wide variety of applications ranging from applets, through stand alone applications that run on over various platforms, to client applications for various enterprise applications.
=> The Java 2 Platform , Enterprise Edition (J2EE) :
J2EE is a platform for building server-side applications.
=> The Java 2 Platform, Micro Edition (J2ME):
The latest addition to the java family, this edition enables the building of java applications for “Micro devices”.

The J2EE Platform

J2EE specifies both the infrastructure for managing our applications, and the service API’s for building our applications. The J2EE Platform is essentially distributed application-server environment - a java environment that provides the following;
=> A set of java extension API’s to build applications. These APIs define a programming model for J2EE applications.
=> A run-time infrastructure for hosting and managing applications. This is the server runtime in which our application reside.
The applications that we could develop with the above may be programs to drive web pages, or components to implement complex data base transactions, or even java applets, all distributed across the network.

The J2EE APIs

Distributed applications require access to a set of enterprise services. Typical services include transaction processing, database access, multithreading, etc. The J2EE architecture unifies access to such services in its enterprise service APIs. However, instead of having to access these service through proprietary or non-standard interfaces, application programs in J2EE can across these APIs via the container.
A typical commercial J2EE platform (or J2EE application server) includes one or more containers, and access to the enterprise APIs is specifies by the J2EE. The specification of the J2EE platform includes a set of Java standard extensions that each J2EE platform must support:
JDBC
More specifically, the JDBC optional package. This API improves the standard JDBC API by adding more efficient means of obtaining connections, connection pooling, distributed transaction, etc.
Enterprise JavaBeans (EJB)
This specifies a component framework for multi-tier distributed applications. This provides a standard means of defining server-side components, and specifies a rich run-time infrastructure for hosting components on the server side.
Java Servlets
The Java Servlets API provides object-oriented abstractions for building dynamic web applications.
JavaServer Pages
This extension further enhances J2EE web applications by providing for template-driven web application development.
Java Message Service
JMS provides a Java API for message queuing, and publish and subscribe types of messageoriented middleware services.
Java Transaction API (JTA)
This API is for implementing distributed transactional applications.
Java Mail
This API provides a platform-independent and protocol-independent framework to build Java based email applications.
JavaBeans Activation Framework
This API is required for the Java Mail API. The Java Mail API uses JAF to determine the contents of a MIME (Multipurpose Internet Mail Extension) message and determine what appropriate operations can be done on different parts of a mail message.
Java API for XML Parsing (JAXP)
This API provides abstractions for XML parsers and transformation APIs. JAXP helps to isolate specific XML parsers, or XML Document Object Model (DOM) implementations, or XSLT transformation APIs from J2EE application code.
The Java Connector Architecture (JCA)
This API has recently been included in J2EE, and provides a means to integrate J2EE application components to legacy information systems.
Java Authentication and Authorization Service (JAAS)
This API provides authentication and authorization mechanisms to J2EE applications.
Most of these API are specifications, independent of implementation. That is, one should be able to access services provided by these APIs in a standard way, irrespective of how they are implemented. The J2EE-specific APIs mentioned above are in addition to the following J2SE APIs:
Java Interface Definition Language (IDL) API
This API allows J2EE application components to invoke CORBA objects via IIOP
JDBC Core API
This API provides the basic database programming facilities.
RMI-IIOP API
This provides on implementation of the usual Java Remote Method Invocation (RMI) API over the Internet Inter-ORB protocol (IIOP). This bridges the gap between RMI and CORBA applications. This is the standardized communication protocol to be used between J2EE containers.
JNDI API
The Java Naming and Directory Interface (JNDI) API standardized access to different types of naming and directory services available today. This API is designed to be independent of any specific naming or directory service implementations. J2SE also specifies a JNDI service provider interface (SPI), for naming and directory service providers to implement.

No comments: