Upload
madygee
View
222
Download
0
Embed Size (px)
Citation preview
8/10/2019 A Brief Introduction to JEE
1/20
A Brief Introduction to JavaEnterprise Edition Platform(JEE)
Juan Manuel GimenoJosep Maria Rib
{jmgimeno,josepma}@diei.udl.cat
Title:(by-sa.eps)
Creator:Adobe Illustra
8/10/2019 A Brief Introduction to JEE
2/20
Wat do !e mean b" Platform#
Wen a pro$rammer as to andle collections
%oesn&t start b" developin$ a as table
'ses te ollections API in te tandard Edition of
Java (JE) Wen a pro$rammer needs a transactional*
secure* interoperable* distributed application
%oesn&t start b" developin$ te lo!+level plumbin$ 'ses te Enterprise Edition of Java (JEE)
,ocuses te efforts in te problem not in te lo!+level details
8/10/2019 A Brief Introduction to JEE
3/20
A little bit of istor"
JEE !as born in Ma" -../ as Pro0ect JPE(Java Professional Edition)
J1EE-21 !as released in %ec -... as an
umbrella specificationconsistin$ on -3 JRs(Java pecification Re4uest)
tartin$ !it J1EE-25 te specification !asdeveloped b" te Java ommunit" Process(JP)
8/10/2019 A Brief Introduction to JEE
4/20
J1EE-21
,ocus on distributed s"stems
6RBA !as te competitor
Enterprise Java Beans (EJBs)
Remote stateful and stateless service ob0ects
Entit" EJBs (persistence ob0ects) optional
Built on Remote Metod Invocation+Internet Inter
6RB Protocol (RMI+II6P) ervlets and Java erver Pa$es (JP)
JM for messa$in$
8/10/2019 A Brief Introduction to JEE
5/20
J1EE-25
,irst to be developed b" te Java ommunit"Process (JP) under JR7/
Entit" beans no! are mandator"
8M9 deplo"ment descriptors for EJBs
Introduced local interfaces passin$ ar$umentsb" reference
J1EE onnector Arcitecture (JA) introducedto connect Java EE to EI (EnterpriseInformation "stems)
8/10/2019 A Brief Introduction to JEE
6/20
J1EE-2:
JR -7-
Added support for Web ervices as EJB12-could be invo;ed over 6AP>P
>imer service created
Better support for
Mana$ement
%eplo"ment
8/10/2019 A Brief Introduction to JEE
7/20
But tere !ere problems 222
"stems created !it J1EE
>oo complicated
%evelopment time out of proportion
J1EE component model
=eav"+!ei$t
%ifficult to test
%ifficult to deplo" %ifficult to run
8/10/2019 A Brief Introduction to JEE
8/20
? and alternatives
A ne! !a" o$ developin$ enterpriseapplications usin$ li$t!ei$t frame!or;s
truts
prin$ =ibernate
8/10/2019 A Brief Introduction to JEE
9/20
Java EE 7
JR 1::
Inspired in open source frame!or;s
Based on a P6J6 (Plain 6ld Java 6b0ect)
pro$rammin$ model
Metadata can be defined b" annotations and8M9 descriptors optional
Java erver ,aces (J,) introduced JA8+W 123 replaced JA8+RP as te 6AP
!eb services API2
8/10/2019 A Brief Introduction to JEE
10/20
Java EE @
JR 5-@
Annotations* P6J6 pro$rammin$*confi$uration+b"+eception (even for !eb tier)
JPA 123
e! JA8+R -2- (RE>full !eb services)
%eprecation of some APIs (b" prunnin$)
ProfilesC !eb profile
%ependenc" in0ection
8/10/2019 A Brief Introduction to JEE
11/20
=istor" of te pecification
8/10/2019 A Brief Introduction to JEE
12/20
Java ommunit" Process (JP)
6pen or$aniDation created in -../ involved inte definition of te future versions and features
Wen te need for a ne! component or API is
identified* te spec lead creates a JR andforms a $roup of eperts
>is $roup as to deliver
A specification A reference implementation (RI)
A >ecnolo$" ompatibilit" it (>)2
8/10/2019 A Brief Introduction to JEE
13/20
tandards
Java EE is an umbrella specification tatbundles to$eter oter JRs
Java EE standards implemented b"
ommercial () or open+source solutions
o loc;in$ to an implementation
Portable !it minor can$es
8/10/2019 A Brief Introduction to JEE
14/20
Arcitecture
Java EE is a set of specifications implementedb" diferent containers
ontainers are runtimeenvironments tat
provide certain servicesto te componentste" ost
>e components use !ell+defined contractstocommunicate
!it te Java EE infrastructure
Wit oter components
8/10/2019 A Brief Introduction to JEE
15/20
Relationsips bet!een containers
8/10/2019 A Brief Introduction to JEE
16/20
omponents
>e 0ava EE runtime defines four t"pes ofcomponents tat an implementation mustsupport
Application clients and applets are components tatrun on te client
Java ervlets* JP and J, are components tatrun on te server (!eb container)
Enterprise Java Beans EJB are businesscomponents tat run on te server (e0b container)
8/10/2019 A Brief Introduction to JEE
17/20
ontainers
>e Java EE erver provides underl"in$services in te form of a container for ever"component t"pe
Eac container as a specific role* supports aset of APIs and offer services to components
ecurit"* database access* transaction andlin$*namin$ director"* resource in0ection* ?
Because all tese services are provided* tepro$rammer can concentrate on te businessproblem at and
8/10/2019 A Brief Introduction to JEE
18/20
lients and servers
8/10/2019 A Brief Introduction to JEE
19/20
ervices provided b" containers
8/10/2019 A Brief Introduction to JEE
20/20
Biblio$rap"
A2GonFalves* Be$innin$ Java EE@ Platform!it Glassfis 5H* Apress (133.)
>e Java EE @ >utorial* olume I
http://java.sun.com/javaee/6/docs/tutorial/doc/http://java.sun.com/javaee/6/docs/tutorial/doc/