curs 1 - java ee
DESCRIPTION
JAVA EETRANSCRIPT
![Page 1: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/1.jpg)
Java Enterprise Edition (Java EE)
Tehnologii Java – p.3/24
![Page 2: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/2.jpg)
Cuprins
Ce reprezinta Java EE ?
Avantajele platformei
Tehnologiile de baza
Sisteme distribuite
Aplicatii Java EE
Tehnologii Java – p.4/24
![Page 3: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/3.jpg)
Contextul de lucru
Bancar
Bursa
Telefonie
Lanturi comerciale
Transport, ...
Caracteristici comune:
Sisteme complexe
Sisteme distribuite
Tehnologii Java – p.5/24
![Page 4: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/4.jpg)
Imagine de ansamblu
Ce avem la dispozitie (la momentul 0):
ProtocoaleTCP, UDP, HTTP, SOAP, XML-RPC, ...
Limbaje de programare
Tehnici de programare în reteaDatagrame, Socket-uri, RMI, ...
Ce vrem : un cadru de lucru pentru dezvoltarea deaplicatii complexe.
Tehnologii Java – p.6/24
![Page 5: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/5.jpg)
Ce este Java EE ?
Java Platform, Enterprise Edition (Java EE) definestestandardul pentru dezvoltarea de aplicatii:
distribuite
multi-platform a
bazate pe componente
pe mai multe niveluri
(Java EE = urmasul lui J2EE)
Tehnologii Java – p.7/24
![Page 6: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/6.jpg)
Avantajele Java EE
Bazat pe specificatii - implement ari
Portabilitate
Scalabilitate
Interoperabilitate
Performant a
Simplitate
Costuri reduse
Standard industrial
Tehnologii Java – p.8/24
![Page 7: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/7.jpg)
Tehnologii
Servlet
JSP Java Server Pages
JSF Java Server Faces
JNDI Java Naming and Directoy Interface
JTA Java Transaction API
JMS Java Message Service
EJB Enterprise Java Beans
JAX-WS Web Services
JDBC, JPA, JAXP, ...
Tehnologii Java – p.9/24
![Page 8: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/8.jpg)
"Sustinatori"
Sun : GlassFish
IBM:IBM WebSphere
Oracle : Oracle Application Server
Apache : Apache Tomcat, Geronimo
RedHat (JBoss) : JBoss Application Server
BEA : BEA WebLogic Application Server
SAP: SAP NetWeave
Macromedia : JRun
...
Tehnologii Java – p.10/24
![Page 9: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/9.jpg)
Competitori
Microsoft .NET
"LAMP" (Linux, Apache, MySQL, PHP/Python/Perl)
Tehnologii Java – p.11/24
![Page 10: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/10.jpg)
Sisteme distribuite
Tehnologii Java – p.12/24
![Page 11: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/11.jpg)
Aplicatii distribuite
Aplicatie distribuita = aplicatie compusa din mai multecomponente distincte ce ruleaza pe platforme eterogeneconectate prin retea.
Modele
2-tier (client-server)
3-tier (client-middleware-server)
multitier (client-multiple middleware-multipleservers)
Tehnologii Java – p.13/24
![Page 12: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/12.jpg)
Aplicatii pe mai multe niveluri
Tehnologii Java – p.14/24
![Page 13: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/13.jpg)
Nivelul client
Responsabil cu interactiunea directa cu utilizatorul.
Clienti Web (thin)
Appleturi (plug-in, securitate)
Aplicatii Webstart (smart client)
Aplicatii desktop clasice (heavy)
Comunicare: Client-Web-Business, Client-Business
Tehnologii Java – p.15/24
![Page 14: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/14.jpg)
Nivelul Web
Responsabil cu generarea de continut dinamic.
Servlet-uri
Pagini JSP
Java Server FacesJava-based Web application frameworkOrientat pe componente GUI - AJAXModel bazat pe evenimente server-side.Suport pentru: navigare, validare, conversie,internationalizare, etc.
Tehnologii Java – p.16/24
![Page 15: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/15.jpg)
Nivelul de logica aplicatiei
Enterprise Java Beans (EJB)
Modeleaza actiuni : autentificare si autorizare,accesarea unui sistem extern sau a unei baze dedate, apelarea altor componente, etc.
Modeleaza date , fiind obiecte ce contin informatiidintr-un mediu persistent.
Permit definirea de actiuni ce pot fi apelate prinmesaje .
Tehnologii Java – p.17/24
![Page 16: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/16.jpg)
Nivelul informational
Modalitati de stocare a informatieiBaze de date
relationaleobiectuale
Sisteme de fisiereSisteme dedicate de persistenta
Tehnici de accesare a informatieiJDBC, JPAJAXP, JAXBJNDI, ...
Tehnologii Java – p.18/24
![Page 17: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/17.jpg)
Aplicatii Java EE
Tehnologii Java – p.19/24
![Page 18: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/18.jpg)
Definitii
Aplicatie Java EE = colectie de componente: servleturi,pagini html, clase, resurse, etc. care pot fi rulate încontainere standard oferite de diversi producatori.
Container = interfata între o componenta sifunctionalitatile specifice platformei care asigurafunctionarea componentei.
Server de aplicatii = Sistem software ce implementeazadiverse tipuri de containere, oferind mecanismelenecesare executiei unei aplicatii Java EE.
Tehnologii Java – p.20/24
![Page 19: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/19.jpg)
Ciclul de viata al unei aplicatii
Containerul unei aplicatii va generara evenimente:
Când o aplicatie este initializata
Când o aplicatie este eliminata
Când este primita o cerere
Când este creata o sesiune de lucru
etc.
Tehnologii Java – p.21/24
![Page 20: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/20.jpg)
Organizarea componentelor
La nivel de surse: Java EE blueprints
La nivel executabil → war, ear\aplicatie
Pagini Web, Resurse\WEB-INF
web.xmlAlte fisiere de configurare\classes
.class, .properties\lib
.jar
web.xml este fisierul principal de configurare al oricareiaplicatii Web.
Tehnologii Java – p.22/24
![Page 21: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/21.jpg)
Exemplu de fisier web.xml
<web-app><display-name>aplicatie</display-name><description>Prima mea aplicatie</description><session-timeout>30</session-timeout>
<welcome-file-list><welcome-file>index.html</welcome-file>
</welcome-file-list>
<error-page><exception-type>java.lang.Exception</exception-type><location>/error.jsp</location>
</error-page>
<servlet><servlet-name>FirstServlet</servlet-name><servlet-class>com.samples.FirstServlet</servlet-class>
</servlet></web-app>
Tehnologii Java – p.23/24
![Page 22: Curs 1 - Java EE](https://reader031.vdocuments.site/reader031/viewer/2022012323/55cf94e6550346f57ba53031/html5/thumbnails/22.jpg)
Bibliografie
The Java EE Tutorialhttp://java.sun.com/javaee/5/docs/tutorial/doc/
...
Tehnologii Java – p.24/24