2 - Cours - Java EE
2 - Cours - Java EE
2 - Cours - Java EE
SERVLET ET VUE
• Puissance
◦ Utilisation de toutes les APIs Java,
◦ Puissant mécanisme d’annotations,
◦ Intégration dans plusieurs profils “Java EE” : profil léger Web, gros profil
“Entreprise” pour faire des applications en clusters, etc
• Efficace
◦ Highly scalable, code ré-entrant, compilé
◦ Jusqu’à 100x plus rapide que PHP, même que C++
• Pour chaque méthode HTTP :GET, POST, PUT, DELETE, etc. il y a une
méthode correspondante :
◦ doGet(…) – répond aux requêtes HTTP GET
◦ doPost(…) – répond aux requêtes HTTP GET
◦ doPut(…), doHead(…), doDelete(…), doTrace(…), doOptions(…)
response
service ( )
HTTPServlet
Browser
HTTP Server
request
doGet ( )
response
service ( )
doPost( )
• L’objet HttpServletResponse
◦ Encapsule les données renvoyées au client
◦ En-tête de réponse HTTP (content type, cookies, etc.)
◦ Corps de la réponse (en tant que OutputStream)
“callback” du cycle de
vie ne doivent jamais service()
...()
être appelées par le doGet()
code qu’on écrit doDelete()
doPost() doPut()
HelloServlet.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
response.setContentType("text/html");
ServletOutputStream out = response.getOutputStream();
String nom= request.getParameter("nom");
out.println("<html><head>");
out.println("\t<title>Hello Servlet</title>");
out.println("</head><body>");
out.println("\t<h1>Hello, " + nom + "</h1>");
out.println("</body></html>");
</web-app>
</servlet>
</servlet-mapping>