Welcome!
Module 1
Fundamentals of Java EE
Technology
• 1
Introduction
“Enterprises today need to extend their
reach, reduce their costs, and lower
their response times”
Simplified Guide to the Java 2 Platform,
Enterprise Edition, Sun Microsystems, Inc.
• 2
Introduction
IT must provide:
High quality services
Highly Available
Secure
Scalable
Powerful services
Useful
Flexible
Extensible
Affordable
• 3
The Problem
Difficult Tasks!
Complex software is expensive to:
produce
purchase
support
maintain
replace
• 4
The Problem
Why not delegate components to
different departments?
Departmental solutions are:
Limited in scope
Difficult to be aware of enterprise-
wide requirements and initiatives
Difficult to leverage ?
Diverse interoperabilty standards
• 5
The Solution
Cost and complexity
Solution: Leverage reusable software components
Limited scope and impact
Solution: Provide interfaces that enable enterprise-wide
application development
Diverse standards
Solution: Utilize existing standards and software components
Strength: Leveraged departmental core compentencies
Strongly defined roles and software interfaces
allow maximum collaboration
• 6
What is J2EE?
What is Java 2 Enterprise Edition?
"The Java 2 platform, Enterprise Edition reduces the
cost and complexity of developing ... multi-tier
services, resulting in services that can be rapidly
deployed and easily enhanced“
Simplified Guide to the Java 2 Platform,
Enterprise Edition, Sun Microsystems, Inc.
• 7
What is J2EE?
J2EE Provides:
Enabling technology
Standards based application model
A common architecture that provides key
common functionality:
Security
Session Management
Scalability
• 8
What is J2EE?
What does "multi-tier" mean?
Applications architecture
Partitioning of application logic
Improves maintainability
Simplifies software upgrades and
management
• 9
What is J2EE?
What does "multi-tier" mean?
Enables increased aggregate functionality
Reduces component maintenance cost
Separation of workload to improve scalability and
reliability
Strong separation prevents
vendor lock-in
• 10
Some History
Two tier application ("thin client")
client server
Easy to upgrade client
Expensive to scale and to add functionality
*Business Logic
• 11
Some History
Two tier application ("client/server")
client server
Strong scalability
Poor upgradability and difficult management
• 12
Today
Three tier application
client app server server
Thin clients make easy upgrades
Centralized application server management is easier to
manage
Model allows for horizontal scalability
• 13
Today
Three tier application
client app server server
Thin clients make easy upgrades
Centralized application server management is easier to
manage
Model allows for horizontal scalability
• 14
Today
• 15
Today
N-tier application
View application server as a data store
Leverage data abstraction
• 16
N-Tier Application
• 17
N-Tier Application
Banner
LDAP
• 18
N-Tier Application
• 19
N-Tier Application
• 20
N-Tier Application
• 21
N-Tier Complexity
• 22
Business Logic
• 23
Business Logic
P I
O
R N
U data
data
O P data
data T
C U
P
E T
U
S
T
S
• 24
N-Tier Complexity
• 25
N-Tier Complexity
• 26
N-Tier Complexity
• 27
N-Tier Complexity
• 28
N-Tier Complexity
• 29
N-Tier Complexity
• 30
J2EE
Servlets Session Entity
Beans Beans
JSP/XML/XSLT
• 31
J2EE
Servlets Session Entity
Beans Beans
JSP/XML/XSLT
• 32
Example: The Kiosk
Servlets Session Entity
Beans Beans
JSP/XML/XSLT
article
article
get
get article
article
client view
restore
restore
category
category
admin view
utility
• 33
The J2EE Framework
Java Technologies
External
Application
• 34