Professional Documents
Culture Documents
Introduction To J2EE: Sapna Saxena
Introduction To J2EE: Sapna Saxena
Presented By:
Sapna Saxena
Lecturer, CSE Department
Chitkara University
Introduction
J2EE is not the Java , that comprises of topics like Applets, Console-
mode programs, Standalone GUI, Multithreading, Graphics,
Exception-handling, String processing, IO Streams, Java Beans in
BDK, Swing etc., with not any real life applications for example,
DataBase access! .
But that doesn’t means that Core Java is useless. As the name
suggests, it is the core and absolutely essential . But, Java has
always been a language for the Web and Enterprise. Without that
essential paradigm shift from desktop/LAN to the WEB & huge
enterprise data, it is very difficult to appreciate the modern
trends and why there is so much demand for J2EE (despite the
challenge from DotNet).
The only topics that could bridge the Core and Enterprise Java are
Sockets & Beans.
The JavaTM Platform
Most of you know there are three flavors of Java - Micro Edition,
Standard Edition, and Enterprise Edition. These three flavors of Java
represent three distinct target market segments each of which has
unique issues and requirements that need to be addressed somewhat
differently.
What is J2EE?
Sun's J2EE architecture is multi tiered architecture and
it eliminates all the problems of two-tier architecture.
It also eliminates the need of writing thin-client
multithread applications, which were earlier used to
write distributed transactional applications for the
enterprise.
Thin-client multi tiered applications are very fast,
secure and reliable. But writing the thin-client multi
tiered applications are not easy and it involves many
lines of complicated code to handle transaction and
state management, multithreading, resource pooling
and other complex low-level details.
What is J2EE?
In the Java TM 2 Platform, Enterprise Edition
(J2EE tm), low-level details are separated from
the business logic. Now the developers will
more concentrate on the business logic rather
than the low-level details. Low-level details are
managed by the application container of the
application server.
Need for Enterprise programming
A well designed enterprise application should meet the
following goals –
Robustness
Performance
Object Oriented design Principles
Avoid Complexity
Maintainable and Extensible
Easy to Test
Promote reuse
Support for the multiple client types
Portability
Advantages of J2EE
Specifically there are two major paths to develop
enterprise applications – first is .NET platform
suite by Microsoft and second J2EE by Sun. There
are lot of other companies also like BEA, IBM,
Oracle, etc. Having all these choices Java has a
great acceptance because of following advantages –
Platform Independence
Managed Objects
Reusability
Modularity
Platform Independence
Enterprise applications comprises of wide variety
of information which has to spread across many
different type of platforms.
Hence, it is essential to have a programming
language that is capable of running across the
different platforms and that is Java.
Managed Objects
The platform independent J2EE provides a
managed environment for component.
J2EE applications are container-centric.
Another important property of the J2EE
applications is the ease by which it can modify
and control the behavior of applications without
changing the codes.
Reusability
In the programming field, the code reuse is the
most important and desired feature. This can be
done by following ways –
To segregate an application’s requirements into
individual components.
To use object oriented technology to encapsulate
shared functionality.
Java uses both the ways.
Modularity
When we develop a complete server-side
application, the program get large and complex
very quickly. It is always best to break down the
application into various modules that are
individually responsible for a specific task. This
also makes the application much easier to
maintain and understand.
Enterprise Architecture Types
A software application composition can be
broken down into three logical layers –
User Interface – Presentation Layer
Processing – Business Rule Layer
Reading and Writing Data – Data Access Layer
Single – Tier Architecture
User Interface Some applications are
Processing
Reading/Writing
developed to run on a single
Data computer.
In these type of applications all
functionalities are embedded
with in the same layer, such
as user interface, processing,
data manipulation, etc.
Such type of architecture is
called single – tier systems.
Two – Tier Architecture
Before the invention of
it
PC’s, applications were m
b t
Su pu
In
developed to run on
mainframe based client-
Di
server environment O
sp
ut lay
pu
which used a “thin” t
Enterprise
Client bean
Enterprise
bean
Enterprise
Enterprise Information
bean System
Client
Client (RDBMS,
Web
ERP,
Container
Legacy
Applications)
(Servlets,
JNDI,
JSP Pages,
Client JMS,
HTML, XML)
JavaMail