Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

Hasonló dokumentumok
A Java EE 5 plattform

A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

MVC Java EE Java EE Kliensek JavaBeanek Java EE komponensek Web-alkalmazások Fejlesztői környezet. Java Web technológiák

Enterprise JavaBeans. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem. Az Enterprise JavaBeans

Oracle Containers for Java - j2ee alkalmazás szerver funkciók. Molnár Balázs Oracle Hungary

Enterprise JavaBeans 1.4 platform (EJB 2.0)

Java I. A Java programozási nyelv

Osztott alkalmazások fejlesztési technológiái Áttekintés

JAVA webes alkalmazások

MVC desktop alkalmazás esetén. MVC Model-View-Controller. eredete: Model View Controller (MVC) elv Java EE Java alapú Web alkalmazások

Üdvözli Önöket A PGY3 tantárgy! Bakay Árpád dr. NETvisor kft (30) arpad.bakay@netvisor.hu

Szoftver Tervezési Dokumentáció. Nguyen Thai Binh

Osztott rendszerek, Java EE. Általános bevezető

5. rész: A Java EE és az Enterprise Bean réteg. Bakay Árpád dr. NETvisor kft (30)

MVC Java EE Java EE Kliensek JavaBeanek Java EE komponensek Web-alkalmazások Fejlesztői környezet

Java Web technológiák

A JavaServer Pages (JSP)

Junior Java Képzés. Tematika

Web-fejlesztés NGM_IN002_1

Bevezető. Servlet alapgondolatok

Java I. A Java programozási nyelv

Adatbányászat és Perszonalizáció architektúra

A JavaServer Pages (JSP)

Komponens modellek. 3. Előadás (első fele)

A JavaServer Pages (JSP)

Szoftverarchitektúrák. 12. Sorozat portál (követelmény specifikáció)

S04-2 Elosztott alkalmazások készítése

The Power To Develop. i Develop

4. rész: Java Enterprise Edition bevezetı. Bakay Árpád dr. NETvisor kft (30)

Komponens alapú programozás Bevezetés

Tartalom. Az EJB 2.1 problémái Az EJB 3 megoldásai

A Java Persistence API PersistenceAPI / 3

Bevezetés J2EE komponensek Java2EE API-k Web alkalmazások Dokumentáció Fejlesztői környezet. JAVA technológiák - bevezető

Java Server Pages - JSP. Web Technológiák. Java Server Pages - JSP. JSP lapok életciklusa

Grafikus keretrendszer komponensalapú webalkalmazások fejlesztéséhez

IBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.

Közösség, projektek, IDE

Alkalmazás technológiai frissítés migrációs és üzemeltetési tapasztalatok

A TANTÁRGY ADATLAPJA

Feltörekvő technológiák: seam, drools, richfaces és társai a JBossban

A webhelyhez kötődő szoftverek architektúrája

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

A Web réteg architektúrája A JSF web alkalmazás keretrendszer. Bakay Árpád dr. NETvisor kft (30)

S01-7 Komponens alapú szoftverfejlesztés 1

Flash és PHP kommunikáció. Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft

Testreszabott alkalmazások fejlesztése Notes és Quickr környezetben

Java grafikai lehetőségek

CORBA Áttekintés. Mi a CORBA? OMG and OMA. Ficsor Lajos. Miskolci Egyetem Általános Informatikai Tanszék

Szoftver labor III. Tematika. Gyakorlatok. Dr. Csébfalvi Balázs

Osztott rendszerek. Krizsán Zoltán 1 Ficsór Lajos 1. Webalkalmazások fejlesztése tananyag. Miskolci Egyetem. Bevezetés A múlt - történelem A jelen

Osztott rendszerek (Distributed. systems) Bevezetés. Tartalom. Ficsor Lajos. Miskolci Egyetem Általános Informatikai Tanszék

EGY NAGYBÓL HÚSZ KISEBB

Nyílt forráskódú irodai programkomponensek vállalati környezetbe való integrációjának vizsgálata és implementációja

STANDARD DEVELOPMENT U.L. FACTORY SYSTEMS GROUP IT DEPARTMENT

Book Template Title. Author Last Name, Author First Name

JEE tutorial. Zsíros Levente, 2012

A TANTÁRGY ADATLAPJA

DCOM Áttekintés. Miskolci Egyetem Általános Informatikai Tanszék. Ficsor Lajos DCOM /1

Alkalmazás és megjelenítés virtualizáció

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Többfelhasználós és internetes térkép kezelés, megjelenítés

Osztott rendszerek (Distributed

Titkosítás NetWare környezetben

ÜZLETI I TELLIGE CIA - VIZUALIZÁCIÓ

<Insert Picture Here> Migráció MS Access-ről Oracle Application Express-re

Az IBM WebSphere Multichannel Bank Transformation Toolkit V7.1 felgyorsítja a többcsatornás alkalmazásfejlesztést

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer

Flex: csak rugalmasan!

A SZOFTVERTECHNOLÓGIA ALAPJAI

API tervezése mobil környezetbe. gyakorlat

Debreceni Egyetem Informatikai Kar JAVA ENTERPRISE COMPUTING

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer

Szolgáltatás Orientált Architektúra és több felhasználós adatbázis használata OKF keretein belül. Beke Dániel

Objektum orientáltság alapjai A Java nyelv Fordítás - futtatás

Modellinformációk szabványos cseréje. Papp Ágnes, Debreceni Egyetem EFK

Szoftver-technológia II. Szoftver újrafelhasználás. (Software reuse) Irodalom

JNDI - alapok. Java Naming and Directory Interface

Komponens alapú fejlesztés

DSD DSD. Egy országos méretű orvosi adatbázissal kapcsolatos informatikai kihívások. Kovács László Pataki Balázs Pataki Máté MTA SZTAKI DSD

Petőfi Irodalmi Múzeum. megújuló rendszere technológiaváltás

SOAP komponensek Delphiben

webmathematica bemutatása

A WEB programozása - Bevezetés őszi félév Dr. Gál Tibor

Windows rendszeradminisztráció és Microsoft szerveralkalmazások támogatása. 5. óra. Kocsis Gergely, Supák Zoltán

Földmérési és Távérzékelési Intézet

Végfelhasználói Applet kézikönyv

Microsoft SQL Server telepítése

Osztálytervezés és implementációs ajánlások

Osztálytervezés és implementációs ajánlások

CMDB architektúra megjelenítése SAMU-val Rugalmas megoldás. ITSMF Bekk Nándor Magyar Telekom / IT szolgáltatás menedzsment központ

CORBA bevezetés. Paller Gábor Internet és mobil rendszerek menedzselése

SAS Enterprise BI Server

Internet programozása. 1. előadás

A Java nyelv bemutatása

Személyügyi nyilvántartás szoftver

Web programoz as

JavaScript Web AppBuilder használata

Többrétegű műszaki nyilvántartás. NETinv

Ustream.tv Bepillantás egy közösségi élővideo site működésébe

Átírás:

A Java EE 5 platform Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2008. 04. 17. A Java EE 5 platform

A Java EE 5 plattform A J2EE 1.4 után következő verzió. Alapvető továbbfejlesztési célok: A programozási modell lényeges egyszerűsítése. A Java EE alkalmazások hatékonyságának növelése Komplex szolgáltatásokat nyújtó alkalmazás szerver fejlesztése (Sun Java System Application Server Platform) A Java EE 5 platform JavaEE5Plattform / 2

A Java EE 5 plattform (folyt.) Hatékony fejlesztő környezet kialakítása: A Java EE 5 SDK integrálja a Sun alkalmazás szervert A Sun alkalmazás szerver integrálható a legelterjedtebb Java fejlesztőkkel (Eclipse, stb.) A NetBeans IDE 5.5 + NetBeans Enterprise Pack 5.5 speciális változata, amely összecsomagolva és előre konfigurálva tartalmaz egy teljes fejlesztő környezetet: Sun EE 5 SDK Sun alkalmazás szerver Java EE 5 API dokumentáció Java EE 5 minta alkalmazások A Java EE 5 platform JavaEE5Plattform / 3

Fő funkciói NetBeans Enterprise Pack 5.5 Java EE 5 komponensek fejlesztésének támogatása Java Persistence API támogatás ("Entity" osztályokból adatbázis generálás, illetve adtabázis struktúrához tartozó "Entity" osztályok generálása) Varázsló "Entity" osztályok generálásához Varázsló JavaServer Faces alkalmazások generálására A Java EE 5 platform JavaEE5Plattform / 4

Legfontosabb változv ltozások Egyszerűbb programozási modell annotációk alkalmazása az XML "deployment descriptor" a legtöbb esetben feleslegessé válik kevesebb jelző és API-elem interface szükséges A Java EE 5 platform JavaEE5Plattform / 5

Legfontosabb változv ltozások (folyt.) Egyszerűbb alkalmazás összeállítás (packaging) egy alkalmazás sokkal kevesebb file-ból áll kevesebb a kötelező meta-adat A Java EE 5 platform JavaEE5Plattform / 6

Legfontosabb változv ltozások (folyt.) Egyszerűbb EJB fejlesztés Kevesebb osztály és interface szükséges Az üzleti interface metódusainak nem kell kivételeket specifikálniuk A deployment descriptor opcionális (helyette annotációk, illetve "dependency injection") A JNDI (Java Naming and Directory Interface) használata nem szükséges sem a kliens, sem a szerver oldalon. (Helyette egy egyszerűbb "lookup" metódus.) A Java EE 5 platform JavaEE5Plattform / 7

Legfontosabb változv ltozások (folyt.) Egyszerűbb EJB fejlesztés (folyt.) egyszerűbb perzisztencia (új perzisztencia API) Interceptors: objektumok, amelyek képesek "elfogni" egy üzleti metódus hívást, és kiegészíteni, majd továbbítani. A Java EE 5 platform JavaEE5Plattform / 8

Legfontosabb változv ltozások (folyt.) Dependency Injection Egy tervezési minta, amelyben egy objektum számára szükséges függőségeket (külső erőforrásokat) automatikusan biztosít egy külső objektum Az objektumnak nem kell megkeresnie, létrehoznia, sokszor explicite igényelnie sem ezeket az erőforrásokat. A Java EE 5 platform JavaEE5Plattform / 9

Legfontosabb változv ltozások (folyt.) Dependency Injection (folyt.) Az JEE platform esetén a függőségekre implicite utalhatnak annotációk (pl. @EJB, @WebServiceRef) a @Remote annotáció jelezheti a szükségességét. Az erőforrások biztosítása a konténerek feladata A Java EE 5 platform JavaEE5Plattform / 10

Legfontosabb változv ltozások (folyt.) Dependency Injection (folyt.) A mechanizmus alkalmazható az alábbi komponensek esetén EJB konténerek vagy web konténerek által kezelt komponensek esetén klienseknél. A Java EE 5 platform JavaEE5Plattform / 11

Legfontosabb változv ltozások (folyt.) Új Persistence API Az entitás bean helyett Bár az EE fejlesztői készítették, bárhol alkalmazható (a SE részévé tették) Az entitások és kapcsolataik speciális annotációkkal megjelölt egyszerű Java osztályokkal definiálhatók (POJO: plain old Java object) Szabványos objektum-reláció leképezés. Lekérdezési műveletek támogatása. A Java EE 5 platform JavaEE5Plattform / 12

Legfontosabb változv ltozások (folyt.) Jobb Web services támogatás A Java EE 5 platform JavaEE5Plattform / 13

Legfontosabb változv ltozások (folyt.) Könnyebb web alkalmazás fejlesztés JavaServer Faces technológia JavaServer Pages Standard Tag Library A Java EE 5 platform JavaEE5Plattform / 14

Java EE application model Osztott többrészes architektúra: A Java EE 5 platform JavaEE5Plattform / 15

Web kliensek Kliens típusokt Browser által megjelenített, a server oldali eszközök (web komponensek) által generált dinamikus web oldalak ("tiszta" vékony kliens) Nem igényel (a böngészőn kívül) semmilyen kliens oldali eszközt és beállítást Appletet is tartalmazó generált web oldal Az applet futtatása "plug-in"-t igényelhet, és megfelelő beállításokat a kliens oldali biztonsági politikában A Java EE 5 platform JavaEE5Plattform / 16

Kliens típusok t (folyt.) Dedikált kliens (Application client) Tipikusan saját felhasználói interface-el rendelkező, a kliens gépen futó alkalmazás Közvetlenül képes elérni az üzleti logikát megvalósító enterprise bean-eket, de használhat HTTP kapcsolatokat is. Kliens oldali telepítést igényel: működtető környezet (application client container) maga a kliens program A Java EE 5 platform JavaEE5Plattform / 17

Dedikált kliens (folyt.) Előnyei: Kliens típusok t (folyt.) Bonyolultabb funkcionalitást tud megvalósítani Összetettebb felhasználói felületet kezelhet Nem Java nyelvű kliensek is integrálhatók Hátrány: bonyolultabb üzemeltetés (változás esetén kliens oldali újrainstallálást igényelhet) ebben segíthet a Java Web Start software A Java EE 5 platform JavaEE5Plattform / 18

Java EE komponensek A Java EE alkalmazások komponensekből épülnek fel Java EE komponens: önálló (self-contained) fukcionális software egység beintegrálható egy Java EE alkalmazásba (a hozzátartozó osztályokkal és egyéb file-okkal) képesek egymással kommunikálni A Java EE 5 platform JavaEE5Plattform / 19

Fajtái: Java EE komponensek (folyt.) kliens oldali komponensek (kliens programok és appletek) server oldali web komponenesek (servlet, JSP, JavaServer Faces) üzleti logikai komponensek: enterprise bean-ek Működésükhöz konténerek kellenek. A Java EE 5 platform JavaEE5Plattform / 20

Java EE server EJB konténer web konténer J2EE konténerek nerek Application client konténer Applet konténer A Java EE 5 platform JavaEE5Plattform / 21

J2EE konténerek nerek (folyt.) A Java EE 5 platform JavaEE5Plattform / 22

JEE alkalmazások telepítése Egy JEE alkalmazást egy vagy több szabványos egységbe (unit) kell csomagolni. Egy egység tartalma: funkcionális komponensek (EJB, JSP oldal stb.) egy opcionális deployment descriptor Egy ilyen egységet telepíteni kell a futtató környezetbe. A telepítést platform függő segédprogrammal kell végezni. A Java EE 5 platform JavaEE5Plattform / 23

JEE alkalmazások telepítése (folyt.) A telepítés során platform függő adatok megadása is szükséges lehet. Például: lokális felhasználók listája a helyi adatbázis helye, neve Az alkalmazás a telepítés után futtatható. A Java EE 5 platform JavaEE5Plattform / 24

Alkalmazások csomagolása sa Egy JEE alkalmazást egy Enterprise Archive (EAR) file-ba kell csomagolni. Ez egy Java Archive (JAR) file,.ear kiterjesztéssel. Az EAR file tartalma: modulok deployment descriptor Egy modul több EAR file része is lehet több alkalmazásban is felhasználható, a kódja megváltoztatása nélkül A Java EE 5 platform JavaEE5Plattform / 25

Az EAR file szerkezete A Java EE 5 platform JavaEE5Plattform / 26

Deployment descriptor Egy XML dokumentum,.xml kiterjesztéssel Tartozhat alkalmazáshoz modulhoz komponenshez Az adott elem telepítéshez szükséges adtait tartalmazza Megváltoztatható anélkül, hogy a kódot változtatni kellene. A Java EE 5 platform JavaEE5Plattform / 27

Deployment descriptor (folyt.) Egy elem lehet különböző alkalmazások része, más más descriptorral. Két típus: Java EE descriptor: szabványos beállítások runtime descriptor: server specifikus beállítások pl. sun-application.xml a Sun Java System Application Server Platform-hoz. A Java EE 5 platform JavaEE5Plattform / 28

Bean osztály(ok) EJB modulok EJB deployment descriptor JAR file,.jar kiterjesztéssel A Java EE 5 platform JavaEE5Plattform / 29

WEB modulok Servlet osztály(ok), JSP file-ok, segítő osztályok, GIF és HTML file-ok Web alkalmazás deployment descriptor JAR file,.war kiterjesztéssel (Web ARchive) A Java EE 5 platform JavaEE5Plattform / 30

Alkalmazás s kliens modulok A szükséges osztályok Alkalmazás kliens deployment descriptor JAR file,.jar kiterjesztéssel A Java EE 5 platform JavaEE5Plattform / 31

Erőforr forrás s adapter modulok Egy adott EIS (Enterprise Information System) szolgáltatásainek eléréséhez implementált "Connector" architektúra Erőforrás adapter deployment descriptor JAR file,.rar kiterjesztéssel A Java EE 5 platform JavaEE5Plattform / 32

A Java EE 5 API elemei A Java EE 5 platform JavaEE5Plattform / 33

Hivatkozások A Java EE 5 platform JavaEE5Plattform / 34