You are on page 1of 7

Z2/34 zleti alkalmazsok ksztsnek elemei a Java-ban (J2EE is), tbbrte!

alkalmazs mo"ell# $l%zatkezelst tmoat% ala& osztl'ok -(ava#net


)soma-, *nternet s +++-ob(ekt,mok elrse#
J2EE (Java 2 Platform, Enterprise Edition):
Szabvnyokat definil tbbrteg vllalati alkalmazsok fejlesztshez. Egyszersti a
vllalati alkalmazsokat egyrszt gy, hogy szabvnyostott modlris kom!onenseket
tmogat szolgltatsok halmazval. "z alkalmazsok mkdsnek#viselkedsnek szmos
rszlett szablyozza atomatiksan $ sszetett !rogramozs nlk%l.
" &ava nyelv s krnyezet az jrafelhasznlhat' s gyakran szabadon elrhet(
!rogramk'dokkal s !lda!rogramokkal altmasztva forradalmastotta a )ebla!ok,
)eb ala! szolgltat'k s )eb rhzak esetn egsz )eb !ortlok ksztst.
" &ava az elmlt *$+ vben a )ebla!okat megjelens%kben attraktvabb tev( a!!letek
alkalmazsn tl betrt a szerverek !ia,ra is. " &ava is -,sak egy. !rogramozsi
nyelv a sok kz%l, amelyen kszthet(k szerveroldali alkalmazsok is gyangy, mint
ms !rogramozsi nyelveken.
Szerveroldali termkek f( jellemz(je/ 01S 2 30ransa,tion 1er Se,ond4
" szerveroldali 5otS!ot &ava 6irtlis 7! megjelensvel 3a 5otS!ot virtlis
g!nek a szerverek ignyeihez alaktott vltozata4, valamint az egyre hatkonyabb
tranzak,i' kezelsi te,hnol'ginak ksznhet(en a vllalatok a teljes szerveroldali
megoldskat &ava ala!okon !t3het4ik fel.
Egyedi fejleszts, vagy szerveroldali jrafelhasznlhat' kom!onensekb(l val'
fel!ts 3a kom!onensek s az ezeket hatkonyan fttatni k!es kontnerek sem
ol,s'ak $ 8$9 milli' :t szerverenknt, de sok szz !rogramoz' tbbvi mnkjval
fejlesztettk4.
"z %zleti &ava alkalmazsok egyszeren %zleti mnkafolyamatokat im!lementl',
elosztott !rogramegysgek. 0gabb rtelemben ltalban %zleti ,llal rt, szmt'g!es
hl'zatok feletti elosztott alkalmazsok.
Jellemz-i.
;ltalban heterogn hl'zatokon mkdnek. <szt vehetnek benne 1=$k, de kz!onti
sz!erszmt'$g!ek is 3!l./ >? 2 nmet vasttrsasg4. Egy lnyeges, kzs elem a
0=1#@1 !rotokoll,sald elemei 30=1, @1, de lehet ms is A"1 vagy 71<S4
" sokfle o!er,i's rendszeren kv%l a vllalati adatbzisok adatait is magba foglalja.
"z adat nagy rtk, biztostani kell a &ava alkalmazsb'l val' el$rst 3adatbzis
kom!onensek tranzak,i'$k!es elrse, de lehet ms alkalmazsok hl'zati elrse is4.
"z alkalmazsok gyakran tlbonyoltottak, tlthatatlanok, aminek
kvetkezmnyeknt a hibk szma rohamosan n(het.
o /om&onensek 2 olyan el(re gyrtott alkalmazs elemek, amelyekb(l
fel!thet%nk sszetettebb alkalmazsokat.
- &ava kliensoldali kom!onens modell/ &ava?eans
- &ava szerveroldali/ Enter!rises &ava?eans
o /om&onens mo"ell/ egy feladat $ egy kom!onens
!l./ helyesrs ellen(rzs
5itelkrtys fizets 2 mindegy mit, milyen boltban
Egy knyvesbolt/
$ r,ikk megjelent(
$ bevsrl'kosr
$ %gyfladat kezel(
$ hitelkrtys fizetst tmogat' kom!onens
" !rogramoz'i mnka a -fel!aramterezst. jelenti.
o " kom!onens s az objektm k%lnbz(, br sok tekintetben hasonl'. Egy
kom!onens tbb egy%tt$mkd( objektmot tartalmazhat. 3fekete doboz4
o Bin,s rtelme a kom!onensek esetben az rklsnek, mert nem ismerj%k a
kom!onens bels( mkdst, gy a mkds megvltoztatsa nem lehet rtelmes
,l.
o Cg az objektmorientlt !rogramozs a !roblma val's letb(l vett
objektmokkal val' modellezst jelenti, ezekre trtn( dekom!oz,i'jt
vgezz%k, addig a kom!onens$orientlt !rogramozs alatt ezen objektmok
rtelmes -forgat'knyvek. megval'stsra alkalmas ,so!ortba szervezst rtj%k.
0 J2EE te)1nol%ia le2ontosabb elemei.
0 333 elrsre 1asznl1at% osztl'ok
Ezek a hagyomnyos &ava s!e,ifik,i'nak is rszt k!ezik. :eladatk a
)ebszervereken trolt inform$,i'k strktrlt elrsnek segtse &ava nyelv al$
kalmazsokb'l. " &ava krnyezetnek rg'ta szabvnyostott rsze/ " java.net ,somag
456, 4567onne)tion s ennek leszrmazott osztlyai, valamint az elrt
inform,i'kat rtelmez( kiegszt( !rotokoll$ s tartalomkezel( osztlyok.
3 :ontos a 5001 !rotokoll s C@CE$s!e,ifik,i' a kliensoldal, szerver$kliens
ar,hitektra szem!ontjb'l4
Java szervletek 8 a +ebszerverol"ali Java
" szervletek olyan &ava !rogramok, amelyek a )eb szerverben 3szervlet kontnerben4
ftnak, s a klienseknek 2 5001 hl'zati !rotokoll felett$ k%ln$fle alkalmazsf%gg(
szolgltatsokat nyjtanak. " szervletek krs$vlasz !rotokollokat val'stanak meg.
" &DEE s!e,ifik,i' egy ltalnos me,hanizmst biztost tetsz(leges krs$vlasz
ala! szolgltatsok, &ava szervletekkel trtn( im!lementlsra. "lkalmazsk
hatkonysgnak ala!ja az lland' elrhet(sg s az egyms tni tbb kliens
kiszolglsnak k!essge. 35001 ala! 2 elterjedt4.
Java 9erver :aes te)1nol%ia
" &S1 te,hnol'gia a &ava szervlet te,hnol'gia kiterjesztse. " &S1 egy sajt ler'
nyelvet hasznl )ebla!okba gyazott alkalmazsi logika 3!rogram$k'd4 lersra,
melynek segtsgvel a szerver ltal generlt )ebla! szerkezete s tartalma knnyen
gazdagthat' k%lnfle inform,i'forrsokb'l szrmaz' adatokkal. @tt is lnyegben a
)ebszerverek ltal rtelmezhet( 50CE$la!ok el(lltsra megy ki a -jtk., de a
kzbeiktatott FCE$szer rszletekkel mindez sokkal elegnsabban, egyszerbben,
kevesebb &ava !rogramozsi mnkval. &ava szervlet s &S1 dinamiks )eb$ala!
krnyezet ala!jaknt szolglnak, melynek f( jellemz(je a !latformf%ggetlensg, az
alkalmazslogika s a megjelents egyrtelm elk%lntse. @ly m'don az alkalmazs
kliens$oldali tele!tsi s szoftverignye minimalizlhat', mivel a kliensoldal nem
tartalmaz &ava k'dot, ,s!n 50CE oldalak feldolgozsra, esetleg &avaS,ri!tet is
tartalmaz' )ebla!ok feldolgozsra k!es )eb bngsz(re van sz%ksg%nk az
alkalmazsokhoz.
0z ;<6 te)1nol%ia
"z FCE 3EGtensible Cark! Eangage4 szintaktikai szablyok s irnyelvek
sszessge, melyek lehet($v teszik hordozhat' adattartalom ler' nyelvek ltre$
hozst. " &DEE megfelel( osztlyokat biztost FCE$lel lert inform,i'k
rtelmezsre s generlsra. "z FCE ti!iks felhasznlsi ter%lete az inform,i'$
,sere megszervezse.
"z FCE$ben az inform,i'k egy strktrlt, szveges formban lesznek lerva, ami
knnyen tvihet( a leg$k%lnflbb szmt'g! ar,hitektrk kztt.
5ordozhat' inform,i' lers 2 hordozhat' &ava !r.
0 J=>7 te)1nol%ia
" &>?= te,hnol'gia az adatbzisok elrsre szolgl &ava !rogramokb'l. Eehet(v
teszi SHE lekrdezsek s ms SHE adatdefinil' s adatmani!ll' tastsok
k%ldst SHE nyelvet tmogat' adat$bzisok fel. Eehet(v teszi a lekrdezsek
eredmnynek knyelmes feldolgozst, f%ggetlen%l att'l, hogy a lekrdezs egy vagy
tbb sort adott$e vissza, s lehet(sget nyjt egyb SHE tastsok eredmnynek
feldolgozsra.
Egyszeren hasznlhat' 2 ,sakI
?voli met%",s1vs (5<*-5emote <et1o" *nvo)ation)
"z <C@ ,somag lehet(v teszi a tvoli s elosztott hl'zati objektmelrst. " tvoli
objektmok elrse gyanolyan szintaGissal trtnhet 3&ava m'don4, mint a helyi
objektmnl.
" modellje az n. tvoli objektm absztrak,i'ra !%l. Ezen objektmok met'dsait
ms virtlis g!ekr(l 3vagyis tvolr'l4 is el lehet rni.
" kzeli s tvoli met'dshvs kztt azrt lnyeges eltrsek vannak. Jihasznlja a
&ava nyelv s @#K objektmok tlajdonsgait, &ava alkalmazsok kztt val'sthat'
meg 3hagyomnyos &<C1 felett, @@K1 felett ms$ =K<?"$ objektmok met'dsai is
elrh.4
Enter&rise Java>eans mo"ell
Egy E&? kom!onens egy j'l definilt %zleti objektmot 3!l. adatbzis bejegyzsek
elrst, m'dostst4 vagy %zleti logikt, %zleti mnkafolyamatot val'$st meg.
Ezeket a kom!onenseket hasznlhatjk a szerveroldali &ava alkalmazsok knnyebb
megrsra. "z E&? ar,hitektra biztostja a hatkony %temezst, mem'riakezelst,
tranzak,i' kezelst, a biztonsgi infrastrktrt, elosztottsgb'l ered( !roblmk
megoldst. Egy E&? kom!onens egy tvoli objektm, amely mkds szem!ontjb'l
lehet/
o %zleti logikt megval'st' 3session bean4
o adatokat re!rezentl' kom!onens 3entity bean4
o %zenet vezrelt bean 3message driven bean4
"z E&? kom!onensek egy E&?$fttat' krnyezetben vannak 3E&? kontner, E&?
szerver4.
?ranzak)i% kezels a Javban8Java ?r# 0:* (J?0)
Elosztott tranzak,i'k kezelsre szolgl' eszkzt s!e,ifikl. " tranzak,i'k f%ggetlen
hl'zati kom!onensek mnkjnak az sszehangolsra szolglnak.
;ltalnos jellemz(k/
o Kszthatatlansg 2 egy%tt lehet lla!otot vltoztatni
o Jonziszten,ia $ ha nem lehet elrni, visszallts
o Szerializlhat'sg 2 !rhzamosan ft' tranzak,i'k nem befolysolhatjk egymst
o 1erziszten,ia $ sikeres tranzak,i' befejezse tn a m'dostsok vglegesek kell
legyenenek 3rendszersszeomls tn is4
Tbbrteg alkalmazsmodell:
!l"zati kap#solat modell$e:
o 0z sszekttets ala&@ ?7:-re &Al- kliens-szerver ka&)solat menete.
%zerver oldal:
L. lefoglal egy 0=1 !ort$ot amelyen vrni fogja a kliensek ka!,sol'dsi krseit 3!ort
kzzttel4
D. a szerver vr egy kliens ka!,solat felvteli krelmre
M. egy kliens ka!,solat felvteli krsre felveszi vele a ka!,solatot s kiszolglja azt
8. mitn a szerver kiszolglta 3elindtotta a kiszol$gl' folyamatot4 j klienst vr
3D.!ontt'l4
&liens oldal:
L. lefoglal egy 0=1 !ort$ot amelyen majd felveszi a ka!,solatot a szerverrel,
D. ka!,sol'dik a szervert fttat' g!hez azon bel%l a !orthoz, amelyen a szerver vr,
M. a kommnik,i's vonalon adatokat fogadhat, illetve k%ldhet a szervernek,
8. lebontja a szerverrel fel!tett ka!,solatt 3visszadja az o!. rendszernek, hogy ms
folyamat is hasznlhassa4. " kliens$szerver kommnik,i' fll$d!leG.
o Bsszekttets mentes ka&)solat.
Cinden rsztvev(nek ltre kell hoznia egy N>1 kommnik,i's !ortot, ahol fogadhat
s k%ldhet ,somagokat. " rsztvev(knek egyms ,mt kell ismerni, tetsz(leges
azonost'j N>1 !ortot hasznlhatnak. Bem garantlt a ,somag megrkezse, esetleg
tbb !ldnyban rkezik meg 2 nehzkesebb lehet a hasznlata. =somagmret korlt 2
egy @1 ,somagba bele kell frnie 3Ethernet E"B$on L,9 k?4
Java'net #somag:
O.J. ala! szerver kommnik,i's vg!ontokat 9erver9o)ket osztly im!lementlja.
Jonstrktorok/
o !ortszm
o !ortszm, sorhossz
o !ortszm, sorhossz, interfsz,m
o @KEG,e!tion kivtel, ha nem siker%l
6rakoz' klienssel a ka!,solat felvtel a))e&t 2 met'ds ami 9o)ket osztlybeli
objektmot ad vissza 3egy hl'zati kommnik,i's ,satorna et*n&,t9tream s
etC,t&,t9tream met'dsokkal az @#K ,satorna elrshez4 Szerveralkalmazs
lezrsa )lose met'ds. 3" 0=1 az adatokat bjtfolyamknt kezeli4
O.J. ala! kliensalkalmazs szmra sz%ksges szolgltatsok 2 9o)ket osztly.
3Ez kommnik,i's vg!ont absztrak,i', a szerver is ezt hasznlja4. " konstrktor
argmentmknt megadott g! valamelyik kommnik,i's vg!ontjval 30=1 v.
N>14 td ka!,sol'dni. 0ovbbi met'dsai/
o et*net0"ress
o et6o)al:ort
o et:ort
O.J. mentes kommnik,i's ka!,solat
=ataram9o)ket osztly$kommnik,i's vg!ont
=ataram:a)ket osztly$k%ldend( adat,somag absztrak,i'jt im!lementlja 2ilyen
objektmot kell ltrehozni az adat k%ldshez. &ellemz(i/
o Caga az elk%ldend( adat
o "z elk%ldend( adat hossza
o " ,lg! @nternet ,me
o " ,l N>1 !ort azonost'ja
" sen" met'ds meghvsakor az o!er,i's rendszer elk%ldi az %zenetet.
O.J. mentes adat,somag fogadsa
o =ataram9o)ket objektm ltrehozs 2!ortszm
o =ataram:a)ket objektm ltrehozsa megfe$lel(en nagy adatter%lettel
o =ataram9o)ket - re)eive met'dsnak hvsa tn addig vr amg legalbb egy
,somag nem rkezik s az els( megrkez( ,somagot fogja visszaadni 3az
argomentmban megadott >atagram1o,ket objektmban4
%ervlet:
" servlet egy s!e,ilis &ava !rogram, amely egy )eb szerverrel szorosan egy%ttmkdve
lehet(v teszi 50CE oldalak dinamiks ltrehozst s !aramterezst k%lnbz( t$viteli
3!ldl 50014 !rotokollokon kereszt%l. Egy servlet a )eb szervernek gyanaz, mint az
a!!let a bngsz(nek 2,sak nem rendelkezik grafiks fel%lettel 3nin,s is sz%ksg r4. "
)ebszerver deleglja az oldalkrst a servlet fel, majd a servlet ltal generlt oldalt
tovbbtja a kliens fel.
" javaG.servlet ,somag tartalmazza az sszes servlet$s!e,ifiks osztlyt s interfszt.
" AAA$n elterjedt, a klienssel val' kommnik,i'ra 5001 !rotokollt hasznl'
servletek mindig a javaG.servlet.htt!.5tt!Servlet leszrmazottai. " javaG.servlet.htt!
al,somag a 5001$hez ka!,so$l'd' s!e,ilis szolgltatsok elrst biztost' ti!$
sokat tartalmazza.
De(leszt-krn'ezet. Servleteket ,sakis olyan )ebszervereken lehet hasznlni, melyek
tmogatjk a servlet "1@$t s k!esek &ava !rogramok fttatsra.
Dor"ts. " lefordtott servlet bjtk'djt a )ebszerver el(re megadott alknyvtrba
kell msolni. Ez a )ebszerver konfigr,i'jt'l f%gg, de ltalban egy servlets nev
alknyvtrat szoktak hasznlni.
D,ttats. egy servlet$ egy )ebszerver, a servlet fttatsa a )ebszerver feladata. " krt
N<E ala!jn knnyen meglla!that' 2 tvonal 3 #servlet4 P servlet neve
" kliens krst a krt servlet szolglja ki, a )ebszerver !edig a servlet vlaszt adja
vissza 50CE oldalknt. " kliens szemszgb(l nin,s k%lnbsg egy statiks 50CE
oldal, illetve egy servletet megad' N<E hvsa kztt 3,sak a krt N<E4.
E' servlet let)ikl,sa, a servlet let,iklsnak esemnyei/
o Servlet !ldnyostsa.
o " servlet kiszolgl egy kliens krst.
o Servlet megsz%ntetse.
Ezen esemnyekhez tartoz' met'dsokat a Servlet interfsz s!e,ifiklja s a
)ebszerver hvja meg.
9ervlet &l"n'ostsa/ Citn a )ebszerver ltrehozta a servlet egy !ldnyt,
meghvja annak/ &,bli) voi" init(9ervlet7on2i) met'dst 2 menti a !aramter
objektmot s meghvja a az init !aramter nlk%li vltozatt 2 nek%nk elg a
!aramter nlk%li vltozatot fel%ldefinilni 2 knyelmi szem!ont. " !ld$nyosts a
)ebszerver indlsakor vagy az els( krs kiszolglsa el(tt trtnik. ;ltalban egy
servletet egy$szer !ldnyost. " fejleszts sorn a servlet egy jabb !ldnynak
ki!r'blsa el(tt rdemes lehet jraindtani a )ebszervert. 3hasonl'/ ?ro)ser 2
a!!let.,lass4 ini,ializlskor rdemes a servlet teljes ftsa alatt hasznlt mez(ket
belltani, !ldl adatbzis kezel( servlet esetn itt rdemes megnyitni az adatbzis$
ka!,solatot. 5a nem siker%l, akkor ezt jelezni a servlet fttat' krnyezetnek/
4navailableEEe&tion kivltsval.
9ervlet&aramterek. servletek konfigrlsra, illetve ini,ializlsra lehet
hasznlni. Cegadsa !aramternvQ!aramterrtk.
o Servlet neve/
servletnv.code=servlet osztlynak teljes neve
ha nem adjk meg, akkor a servlet osztlynak a nevvel fog
megegyezni
o Servlet ini,ializ,i's !aramterei/
servletnv.initArgs=paramterek
a paramternv=paramterrtk rtk!rok vessz(vel elvlasztott
listja, egy sorba rva.
/liens kiszollsa. Citn a )ebszerver ini,ializlta a servlet egy !ld$nyt, az
k!ess vlik a kliens kiszolglsra. 5a a )ebszerver meglla!totta, hogy a krs
egy servletet ,loz meg, meghvja annak &,bli) voi" servi)e(9ervlet5eF,est,
9ervlet5es&onse) met'dst. "z els( !aramterknt ka!ott objektmon kereszt%l a
kliens$szerver a msodikon a szerver$kliens kommnik,i' val'sthat' meg. " servlet
gy szolgl ki egy kliens krst, hogy feldolgozza az eset$leges ka!ott !aramtereket,
melyek rendszerint 50CE rla!ok hasznlata esetn az rla!ok mez(i$nek rtkeit
tartalmazzk, majd dinamiksan legene$rl 3ltalban4 egy 50CE oldalt, melyet a
kliens bngsz(!rogram megjelent.
" !aramter neve a 50CE oldal rla! beviteli mez(jnek nevvel 3B"CE
attribtm4 egyezik meg, rtke !edig a beviteli mez( tartalmt veszi fel.
9ervlet meszAntetse. 5a nin,s sz%ksg tovbb az adott szervlet szolgltatsaira a
)eb szerver megsz%ntetheti a servlet !ldnyt. " servlet fttat'krnyezet megvrja,
amg az adott servletet hasznl' minden mg ft' kliens ki$szolgl' !rogramszl vget
r 3vagy lejr egy bel$ltott id(tartam, MR se,4 s meghvja a servlet
&,bli) voi" "estro'() met'dst. Ezen met'ds meghvsa tn mr nem fog egyik
let,ikls met'ds sem meghv'dni. 5a esetleg jra sz%ksg lenne a mr
megsz%ntetett servletre, akkor az a servlet j !ldnynak ltrehozst s
ini,ializlst jelenti.

You might also like