View
228
Download
4
Category
Preview:
Citation preview
וטכנולוגיות J2EEפתרונות Oracle
Mr. Liran Zelkha, Chief ArchitectLiran.zelkha@alunasoft.com
2
Agenda
• From client-server to N-tier– Middltier application needs
• J2EE application architecture – The Web user interface– The Business tier– Other services– Where to put the business logic
(Database/Application)
• J2EE benefits– Cross platform– RAD development
• The Way ahead: Services & SOA
3
Client/Server Applications
• Around since the mid-80s.• Client power.• RAD development (VB,
Developer/2000, PowerBuilder).
• But:– Installations and maintenance
(TCO)– Do not fit the “web paradigm”
4
N-Tier
• More server oriented.• Application can be divided to
tiers, each responsible for different aspect of the application:– Easier upgrading– Easier support
• But:– Our requirements have increased– Where is our RAD?
5
Middletier Application Needs
• All we were used to:– Functionality– User interface– RAD
• And some more:– Security– Performance– Management– Upgrade-ability– Integration
6
J2EE Introduction
• Built on top of Java.– Cross platform.– Industry support.– Large developers base.
• Specification developed and maintained by JCP.– Check www.jcp.org for list of
participants.
7
J2EE Current Status
• Oracle, IBM, BEA and Jboss largest players.
• Many enterprise software vendors use J2EE – SAP, Oracle, IBM, PeopleSoft.
• Large number of customers.• Wide experience and
acceptance.
8
J2EE TiersC
lien
t m
ach
ine
Fir
ew
all /
Load
Bala
ncer
Web Server
Web Server
EJB Containe
r
EJB Containe
r
Database
Web Containe
r
Web Containe
r
Bro
wser
HTMLGIF
JPEG
HTMLGIF
JPEGServlet
JSP
ServletJSP
EJBJDBCJCAJMS
EJBJDBCJCAJMS
9
J2EE ScenarioC
lien
t m
ach
ine
Web Server
EJB Container
Database
Web Container
Catalog.jsp
HTTPSession
Datasource
Con
necti
on
BookEJB
Logo.gif
Con
necti
on
Con
necti
on
http://www.j2eedemo.com/catalog.jsp
1
2
3
4
5
67
8
10
The Web Tier
• Use JSP for web development.• HTML pages with Java code
embedded inside (much like ASP).
• Many supporting technologies:– Session management,– I18N,– Security,– Much more.
11
Web Tier Ease Of Use
• Frameworks for web development consolidated into JSF.
• Pre defined components (trees, lists, templates) that can be purchased or downloaded for free.
• Standard supported by all J2EE vendors.
• Tools offer WYSIWYG and RAD.
Demo: Web Tier Ease Of Use
13
The Business Tier
• Component based development.
• Services provided by application server:– High availability,– Security,– Management,– More.
14
EJBs
• Components for business logic (session EJBs), database access (entity EJBs)
• Support for remote calls and web services
• Application server provides run time services – transactions, security, more.
15
Other services
• Messaging– JMS – standard API for all
messaging platforms.
• Integration– JCA – buy or develop
connectors for legacy systems.
• Management– JMX – easy to develop
management components.
Demo: Business Tier
17
J2EE Benefits – Cross platform• Can work on any
hardware/OS – Linux, Windows, UNIX and Mainframe.
• Can work with any vendor – commercial (Oracle, IBM) or open source (Jboss, Apache)
• Porting is easy.
18
J2EE Benefits – RAD
• Setting up server is as easy as opening a ZIP file (Oracle, Jboss).
• Development can be done using RAD tools (Jdeveloper, Eclipse).
• Deployment is a mouse click away.
19
J2EE Benefits - Experience
• Tons of books, articles, forums.
• Design patterns and blue prints for easy development.
• Many online and classic courses.
20
The Middle Tier future
• Welcome to the world of:– Web services,– SOA,– Aspect Oriented Programming
21
Web Services
• Components with HTTP access.
• Can be used from any language.
• Thoroughly supported in J2EE.
• Can pass through firewalls.
22
SOA
• Service Oriented Architecture.
• Software architecture composed of standalone components.
23
Development Aids
• AOP - Attribute Oriented Programming
• XP• AOP – Aspect Oriented
Programming• BPEL – Business Process
Execution Language
24
AOP - Attribute Oriented Programming• J2EE components require
meta-data:– Web.xml, ejb-jar.xml,
application.xml– Proprietary files
• External is an advantage?!?• Xdoclet can auto-create
meta-data files
25
XP – eXtreme Programming
• Automated testing:– Junit– JUnitPerf– HTTPUnit– Cactus
• Rapid build:– ANT
26
AOP - Aspect Oriented Programming• Many view J2EE containers as
AOP containers– Write business logic– Server provides aspects of
transactions,security, performance, etc.
27
Web Services Meet Business Processes
Web Service 1
Web Service 2
Web Service 3
Web Service 4
Web Service 5
Web Service n
28
Example Problem Space
ClientPO Service
Credit Service
Inventory Service
Purchase Order
Credit
Check
ReserveInventory
Credit
Response
InventoryResponse
InvoiceConsolidate
Results
29
Summary
• J2EE has been here a while and it is here to stay.
• Easy to use – unlike a couple of years ago.
• Easy to teach – allot of experience going around.
• Stable and inexpensive – competition brings the best in vendors.
• Good luck…
30
QA&
Q U E S T I O N SQ U E S T I O N S
A N S W E R SA N S W E R S
Recommended