A Brief Introduction to JEE

  • 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/