Title: ??????? J2EE ??????????? Oracle
1??????? J2EE ??????????? Oracle
Mr. Liran Zelkha, Chief Architect Liran.zelkha_at_alu
nasoft.com
2Agenda
- 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
3Client/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
4N-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?
5Middletier Application Needs
- All we were used to
- Functionality
- User interface
- RAD
- And some more
- Security
- Performance
- Management
- Upgrade-ability
- Integration
6J2EE 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.
7J2EE 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.
8J2EE Tiers
Client machine
Firewall / Load Balancer
Web Server
EJB Container
Web Container
EJB JDBC JCA JMS
Database
HTML GIF JPEG
Browser
Servlet JSP
Web Server
EJB Container
Web Container
EJB JDBC JCA JMS
HTML GIF JPEG
Servlet JSP
9J2EE Scenario
Client machine
Web Server
EJB Container
Web Container
Connection
Connection
Connection
Database
1
3
Datasource
4
7
6
2
Catalog.jsp
BookEJB
8
5
HTTPSession
Logo.gif
http//www.j2eedemo.com/catalog.jsp
10The 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.
11Web 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.
12Demo Web Tier Ease Of Use
13The Business Tier
- Component based development.
- Services provided by application server
- High availability,
- Security,
- Management,
- More.
14EJBs
- 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.
15Other 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.
16Demo Business Tier
17J2EE 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.
18J2EE 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.
19J2EE Benefits - Experience
- Tons of books, articles, forums.
- Design patterns and blue prints for easy
development. - Many online and classic courses.
20The Middle Tier future
- Welcome to the world of
- Web services,
- SOA,
- Aspect Oriented Programming
21Web Services
- Components with HTTP access.
- Can be used from any language.
- Thoroughly supported in J2EE.
- Can pass through firewalls.
22SOA
- Service Oriented Architecture.
- Software architecture composed of standalone
components.
23Development Aids
- AOP - Attribute Oriented Programming
- XP
- AOP Aspect Oriented Programming
- BPEL Business Process Execution Language
24AOP - 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
25XP eXtreme Programming
- Automated testing
- Junit
- JUnitPerf
- HTTPUnit
- Cactus
- Rapid build
- ANT
26AOP - Aspect Oriented Programming
- Many view J2EE containers as AOP containers
- Write business logic
- Server provides aspects of transactions,security,
performance, etc.
27Web Services Meet Business Processes
Web Service 1
Web Service 4
Web Service 2
Web Service 5
Web Service 3
Web Service n
28Example Problem Space
Credit Service
Consolidate Results
PO Service
Client
Inventory Service
29Summary
- 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
30Q
Q U E S T I O N S A N S W E R S
A