Upload
colaru
View
6.587
Download
9
Embed Size (px)
DESCRIPTION
Servlets JSP Struts ANT
Citation preview
CURS JAVA - Web
CRISTIAN OLARUhttp://olaru.blogspot.com
Cuprins1. Introducere2. Tipuri de date3. Structuri de control4. Clase si obiecte5. Alte constructii6. JDBC7. Servlets8. JSP9. Struts10. ANT
1. SERVLET API
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
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
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
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
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
2. JSP
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
2.2 Scop-ul variabilelor
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
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
3. Struts
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
3.2 Struts - modelul MVC2
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
3.4 Clase Struts
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
4. ANT
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
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