Download - Dezvoltare Web Folosind Java
![Page 1: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/1.jpg)
CURS JAVA - Web
CRISTIAN OLARUhttp://olaru.blogspot.com
![Page 2: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/2.jpg)
Cuprins1. Introducere2. Tipuri de date3. Structuri de control4. Clase si obiecte5. Alte constructii6. JDBC7. Servlets8. JSP9. Struts10. ANT
![Page 3: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/3.jpg)
1. SERVLET API
![Page 4: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/4.jpg)
1.1 Servleti Ce este un servlet? Generare dinamica de continut - versus
continut static HTML Extensie a serverului Web Specificare clara pe jcp.org, evolutia in timp
- versionare Servleturi generice - GenericServlet Servleturi HTTP - HTTPServlet Exemplu Hello World
![Page 5: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/5.jpg)
1.2 Pasi in scrierea servletilor Extindem clasa HttpServlet si suprascriem
una din metodele doGet() sau doPost() Scoatem parametrii primiti via HttpRequest
si ii folosim in procesul de generare a raspunsului
Setam tipului de raspuns prin setContentType – formate MIME
Trimitem raspunsului inapoi browserului folosind HttpResponse
Inregristrarea servletului in descriptorul aplicatiei Web
![Page 6: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/6.jpg)
1.3 Protocolul HTTP Nivel aplicatie - trimitere de text peste
TCT/IP; specificat prin RFC-uri Cererile de tip GET si POST – diferenta este
modul de trimitere al aparametrilor Servere Web – Apache, IIS; Browserul Web – client de HTTP Orientat request/response, fara stare,
HttpRequest/HttpResponse Containere de servleturi Exemplu Tomcat: server.xml, contextul
unei aplicatii, logging, administrare, modificari in configurare
![Page 7: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/7.jpg)
1.4 Aplicatii Web Structura unei aplicatii Web, arhive .war Structura director de lucru, deployerea in
serverul de aplicatii, directorul webapps Web.xml si inregistrarea servletilor – despre
inpachetarea servletilor Integrarea cu IDE-urile si depanarea
aplicatiei Web Startarea, oprirea, reincarcarea aplicatiilor
Web (folosind managerul) – ex Tomcat Important: in Java se genereaza cate un
thread pentru fiecare cerere
![Page 8: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/8.jpg)
1.5 Alte aspecte Metodele init() si destroy() pentru
initializarea si distrugerea servletului Introducerea de parametri initiali pentru
servlet si aplicatie: ServletConfig, ServletContext
Libraria servlet-api.jar Sesiuni de lucru Gestiunea sesiunii folosind HttpSesion
Cookies Rescrierea de url
![Page 9: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/9.jpg)
2. JSP
![Page 10: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/10.jpg)
2.1 Intoducere in JSP Introducere de scripting Java in paginile HTML <%
Java Code %> JSP-urile sunt transformate de catre un compilator in
servleturi (Tomcat - Jasper) Tag-urile JSP ofera avantajul lizibilitatii jsp-urilor – este
indicata folosirea lor in loc de scripleti Forward versus include Obiecte implicite si domenii de vizibilitate:
Pagina: page Cerere: request Sesiune session Aplicatie: application
Exemplu helloWorld.jsp
![Page 11: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/11.jpg)
2.2 Scop-ul variabilelor
![Page 12: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/12.jpg)
2.3 Elemente de baza Directive – nu genereaza output
<%@ directive …%> <jsp:directive …/> Ex: page, taglib
Declaratii – declaratii de metode <%! Declaratii… %> <jsp:declaration> …
Expresii – inserare in flux iesire <%= expresie %> <jsp:expresion> …
Scriplet – cod java in HTML <% cod java %> <jsp:scriplet> …
Despre librarii de taguri
![Page 13: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/13.jpg)
2.4 JSTL Libraria de tag-uri standard JSP 5 biblioteci:
c - core x – procesare XML fmt – formatarea datelor sql – lucru cu baze de date fn – functii ajutatoare
Includerea librariilor folosind directiva <%@taglib, jstl.jar si standard.jar
Core: c:out – evaloarea si afisarea expresiiilor c:set – setarea valorii unei variabile c:if – conditie simpla c:choose - case c:forEach – iteratiie
Formating: fmt:formatNumber, fmt:parseNumber, fmt:formatDate, fmt:setLocale
![Page 14: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/14.jpg)
3. Struts
![Page 15: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/15.jpg)
3.1 Introducere in Struts
Istoric, denumire, prezent, viitor Framework-uri Web Modelul MVC 2
Controler – servlet View – JSP Model – Java Beans
Despre specificatia JavaBeans, POJOS
![Page 16: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/16.jpg)
3.2 Struts - modelul MVC2
![Page 17: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/17.jpg)
3.3 Clase implicate Front controller - ActionServlet Template method – Action’s Transferul parametrilor – ActionForm’s Redirectarea spre prezentare –
ActionForward’s Maparea actiunilor – ActionMapping’s Configurarea cu struts-confg.xml, dyna
action forms, programare declarativa
![Page 18: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/18.jpg)
3.4 Clase Struts
![Page 19: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/19.jpg)
3.5 Taguri Struts Tag-uri proprii Struts:
html- prepopulare dinamica cu date logic – controlul fluxului bean – lucrul cu JavaBeans
Suport pentru Expresion Language JSTL in raport cu tag-uri Struts; in amanunt
biblioteca HTML Includerea tag-urilor Struts: struts.jar,
struts-html.tld Despre Tiles, integrarea cu Tiles Fisire de proprietati si internationalizarea
aplicatiilor
![Page 20: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/20.jpg)
4. ANT
![Page 21: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/21.jpg)
4.1 Scurta introducere in ANT Inlocuitor in lumea Java pentru utilitarul
make din C/linux; istoric si instalare Automatizare de procese – build, deploy,
executie de unit teting, etc. Descrierea task-urilor se face folosind
fisiere XML Proiect, task-uri si target-uri Task-uri built-in uzuale: javac, war, copy,
echo Proprietati, fisiere de proprietati, definirea
cailor
![Page 22: Dezvoltare Web Folosind Java](https://reader033.vdocuments.site/reader033/viewer/2022061206/54823a35b4af9f960d8b472a/html5/thumbnails/22.jpg)
Referinte utile
1. Specificatii JCP: http://www.jcp.org/ 2. Specificatii Servlet API: http://java.sun.com/products/servlet/ 3. Specificatii JSP: http://java.sun.com/products/jsp/ 4. Jakarta Apache Project: http://jakarta.apache.org/ 5. Apache Tomcat: http://tomcat.apache.org/ 6. More Servlets and JSP book: http://www.moreservlets.com/ 7. Libraria JSTL: http://jakarta.apache.org/taglibs/ 8. Proiectul Struts: http://struts.apache.org/ 9. Documentatia standard Struts 1.2:
http://struts.apache.org/1.2.x/userGuide/index.html 10. Tiles: http://struts.apache.org/1.x/struts-tiles/index.html 11. Proiectul Apache ANT: http://ant.apache.org/ 12. MIME TYPES: http://www.iana.org/assignments/media-types/ 13. Forum curs: http://www.javaromania.com 14. Cristian Olaru: http://olaru.blogspot.com