tp1 Servlet

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 9

TP1: servlet1

SERV1: : pour afficher un formulaire permettant de saisir infos d’un nouvel employé. Une fois le
formulaire rempli et soumis, les données sont envoyées à la servlet ajout.

//@WebServlet: pour déclarer un servlet.elle remplace la déclaration du


servlet dans le fichier web.xml
@WebServlet(urlPatterns = {"/serv1"}) // urlPatterns.. : Il définit les
motifs d’URL que le servlet va gérer
public class serv1 extends HttpServlet {
// processRequest: méthode qui est protégée (elle peut être appelée par cette
classe et ses sous-classes). Elle prend deux arguments :
// HttpServletRequest: objet de requête qui contient les données de la requête
client
//HttpServletResponse: objet de réponse qui est utilisé pour envoyer la
réponse au client.
protected void processRequest(HttpServletRequest
equest,HttpServletResponse response)
throws ServletException, IOException {
// Cette méthode peut lever deux exceptions : ServletException : Si une erreur
spécifique au servlet se produit.
// IOException : Si une erreur d’entrée/sortie se produit.
response.setContentType("text/html;charset=UTF-8"); //définit le type
de contenu de la réponse HTTP.
try (PrintWriter out = response.getWriter()) { //PrintWriter pour
écrire la réponse HTML
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet serv1</title>");
out.println("</head>");
out.println("<body>");
out.println("<center>");
out.println("<form action='ajout' method='post'>");
out.println("Matricule");
out.println("<input type='text' name='m'><br><br>");

out.println("Nom");
out.println("<input type='text' name='n'><br><br>");

out.println("Salaire");
out.println("<input type='text' name='s'><br><br>");

out.println("Prime");
out.println("<input type='text' name='p'><br><br>");

out.println("<input type='submit' value='Insertion'>");


out.println("</form>");
out.println("</center>");
out.println("</body>");
out.println("</html>");
}
}
@Override
protected void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
protected void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
liste : Cette servlet récupère la liste des employés existants de la base de données Oracle et les
affiche dans une table HTML. Pour chaque employé, il y a des liens pour modifier ou supprimer
l’employé.

@WebServlet(urlPatterns = {"/liste"})
public class liste extends HttpServlet {
public static int mate;
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
//les etapes de connexion
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>liste employes</title>");
out.println("</head>");
out.println("<body>");
out.println("<center>");

out.println("<h1>Liste employés</h1>");
out.println("<form action='serv1' method='post'>");
out.println("<table border='2'>");
out.println("<tr>");
out.println("<td>");
out.println("Matricule");
out.println("</td>");
out.println("<td>");
out.println("Nom");
out.println("</td>");
out.println("<td>");
out.println("Salaire");
out.println("</td>");
out.println("<td>");
out.println("prime");
out.println("</td>");

out.println("<td>");
out.println("Action 1");
out.println("</td>");
out.println("<td>");
out.println("Action 2");
out.println("</td>");
out.println("</tr>");
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection co=null;
co=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","u","p");
Statement s1=co.createStatement();
String req="select * from personne";
ResultSet res=s1.executeQuery(req);

while(res.next())
{
mate=res.getInt("mat");
out.println("<tr>");
out.println("<td>");
out.println(""+res.getInt("mat"));
out.println("</td>");
out.println("<td>");
out.println(""+res.getString("nom"));
out.println("</td>");
out.println("<td>");
out.println(""+res.getFloat("sal"));
out.println("</td>");
out.println("<td>");
out.println(""+res.getFloat("pr"));
out.println("</td>");

out.println("<td><a href='modif?mat="+mate+"'>Modification</a></td>");
out.println("<td><a href='supp?mat="+mate+"'>Suppression</a></td>");
out.println("</tr>");
}
out.println("</table><br><br>");

out.println("<input type='submit' value='New'>");


out.println("</form>");
out.println("</center>");
out.println("</body>");
out.println("</html>");
}
catch(ClassNotFoundException ee)
{
out.println("err pilote");
}
catch(SQLException gg)
{
out.println("err de requete");
}
}
}
//@overide * 3
}
ajout : Cette servlet récupère les données du formulaire envoyées par serv1, puis insère un nouvel
employé dans la base de données Oracle en utilisant ces données. Une fois l’insertion terminée,
l’utilisateur est redirigé vers la servlet serv1.

@WebServlet(urlPatterns = {"/ajout"})
public class ajout extends HttpServlet {
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
int m=Integer.parseInt(request.getParameter("m"));
String n=request.getParameter("n");
float s = Float.valueOf(request.getParameter("s"));
float p = Float.valueOf(request.getParameter("p"));
//les etapes de connexion
try
{ //chargement pilote
Class.forName("oracle.jdbc.driver.OracleDriver");
//url
Connection con=null;
con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","u","");
//creation espace memoire
Statement s1=con.createStatement();
//declaration requete
String req="insert into personne values("+m+",'"+n+"',"+s+","+p+")";

int res= s1.executeUpdate(req);


ServletContext ct = request.getServletContext();
RequestDispatcher dis=ct.getRequestDispatcher("/liste");
dis.forward(request, response);
}
catch(ClassNotFoundException ee)
{
out.println("err pilote ????");
}
catch(SQLException gg)
{
out.println("err requete ou connexion ???");
}
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet ajout</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet ajout at " + request.getContextPath() + "</h1>");
out.println("</body>");
out.println("</html>");
}
} //@overide *3
}
Psupp : Cette servlet supprime l’employé sélectionné de la base de données Oracle.

@WebServlet(urlPatterns = {"/Psupp"})
public class Psupp extends HttpServlet {
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
try
{ //chargement pilote
Class.forName("oracle.jdbc.driver.OracleDriver");
//url
Connection con=null;
con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","u","");
//creation espace memoire
Statement s1=con.createStatement();
//declaration requete
String req="delete from personne where mat="+supp.mate;

int res= s1.executeUpdate(req);


ServletContext ct = request.getServletContext();
RequestDispatcher dis=ct.getRequestDispatcher("/liste");
dis.forward(request, response);
}
catch(ClassNotFoundException ee)
{
out.println("err pilote ????");
}
catch(SQLException gg)
{out.println("err requete ou connexion ???");
}
}
}//@overide *3
}
Pmodif : récupère les nouvelles informations de l’employé du formulaire envoyé par modif, puis met à
jour les informations de l’employé dans la base de données Oracle.

@WebServlet(urlPatterns = {"/modif"})
public class modif extends HttpServlet {
public static int mate;
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
int mat=Integer.parseInt(request.getParameter("mat"));
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection co=null;
co=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","u","p");
Statement s1=co.createStatement();
String req="select * from personne where mat="+mat;
ResultSet res=s1.executeQuery(req);

while(res.next())
{
mate=mat;
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet modif</title>");
out.println("</head>");
out.println("<body>");
out.println("<form action ='Pmodif' method='post'>");
out.println("<center>");
out.println("Nom");
out.println("<input type='text' name='nom'
value='"+res.getString("nom")+"'><br><br>");

out.println("Salaire");
out.println("<input type='text' name='sal' value =
"+res.getFloat("sal")+"><br><br>");

out.println("Prime");
out.println("<input type='text' name='pr'
value="+res.getFloat("pr")+"><br><br>");
out.println("<input type='submit' value='Update'>");
out.println("</center>");
out.println("</form>");
out.println("</body>");
out.println("</html>");
}
}
catch(ClassNotFoundException ee)
{
out.println("err pilote");
}
catch(SQLException gg)
{
out.println("err de requete");
}
}
}//@overide *3
}
supp : affiche les informations d’un employé spécifique (sélectionné par le matricule passé en
paramètre) avant de le supprimer de la base de données. L’utilisateur est ensuite redirigé vers la
servlet Psupp.

@WebServlet(urlPatterns = {"/supp"})
public class supp extends HttpServlet {
public static int mate;
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
int mat=Integer.parseInt(request.getParameter("mat"));
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection co=null;
co=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","u","p");
Statement s1=co.createStatement();
String req="select * from personne where mat="+mat;
ResultSet res=s1.executeQuery(req);
while(res.next())
{
mate=mat;
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet supp</title>");
out.println("</head>");
out.println("<body>");
out.println("<form action ='Psupp' method='post'>");
out.println("<center>");
out.println("Nom");
out.println(""+res.getString("nom")+"");
out.println("<br><br>");

out.println("Salaire");

out.println(""+res.getFloat("sal")+"");
out.println("<br><br>");

out.println("Prime");
out.println(""+res.getFloat("pr")+"");
out.println("<br><br>");

out.println("<input type='submit' value='Delete'>");


out.println("</center>");
out.println("</form>");
out.println("</body>");
out.println("</html>");
}
}
catch(ClassNotFoundException ee)
{
out.println("err pilote");
}
catch(SQLException gg)
{
out.println("err de requete");
}
}
}//@overide *3
}
modif: Cette servlet affiche les informations d’un employé spécifique (sélectionné par le matricule
passé en paramètre) et permet à l’utilisateur de les modifier. Les nouvelles informations sont ensuite
envoyées à la servlet Pmodif.

@WebServlet(urlPatterns = {"/modif"})
public class modif extends HttpServlet {
public static int mate;
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
int mat=Integer.parseInt(request.getParameter("mat"));
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection co=null;
co=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","u","p");
Statement s1=co.createStatement();
String req="select * from personne where mat="+mat;
ResultSet res=s1.executeQuery(req);
while(res.next())
{
mate=mat;
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet modif</title>");
out.println("</head>");
out.println("<body>");
out.println("<form action ='Pmodif' method='post'>");
out.println("<center>");
out.println("Nom");
out.println("<input type='text' name='nom'
value='"+res.getString("nom")+"'><br><br>");

out.println("Salaire");
out.println("<input type='text' name='sal' value
="+res.getFloat("sal")+"><br><br>");

out.println("Prime");
out.println("<input type='text' name='pr'
value="+res.getFloat("pr")+"><br><br>");

out.println("<input type='submit' value='Update'>");


out.println("</center>");
out.println("</form>");
out.println("</body>");
out.println("</html>");
}
}
catch(ClassNotFoundException ee)
{
out.println("err pilote");
}
catch(SQLException gg)
{
out.println("err de requete");
}
}
}//@overide *3
}

serv1 /ajout / liste/ modif : Pmodif : supp Psupp :

Vous aimerez peut-être aussi