TP Serv Lets
TP Serv Lets
TP Serv Lets
المملكة المغربية
Université Mohamed 1er Oujda جامعة محمد األول وجدة
Faculté Pluridisciplinaire الكلية متعددة التخصصات
Nador الناظور
4- Le fichier FirstServlet.java :
6.3-Redemarer le serveur puis tester votre travail en lançant le navigateur de votre choix, puis
entrer l’url suivante : http://localhost:8010/TP-EX1/FirstServlet
Le fichier index.html :
8.2-Modifier la servlet :
3- Le fichier index.html :
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form method="post" action="servEx2">
package servlest;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
@SuppressWarnings("serial")
public class servEx2 extends HttpServlet {
doGet(request, response);
}
<servlet>
<description></description>
<display-name>servEx2</display-name>
<servlet-name>servEx2</servlet-name>
<servlet-class>servlest.servEx2</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servEx2</servlet-name>
<url-pattern>/servEx2</url-pattern>
</servlet-mapping>
</web-app>
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
int x = Integer.parseInt(request.getParameter("a"));
int y = Integer.parseInt(request.getParameter("b"));
String op = request.getParameter("op");
Calculatrice calc = new Calculatrice(x,op,y);
int z=calc.res;
out.println("<h2>Résultat</h2>");
out.println("<h2>"+z+"</h2>");
}
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
class Calculatrice{
private int a;
private int b;
private String c;
int res;
public Calculatrice(int x,String op,int y){
this.a = x;
this.b = y;
this.c = op;
if(c.equals("+")){
this.res = a + b;
}
else if(c.equals("-")){
this.res = a - b;
}
else if(c.equals("*")){
this.res = a * b;
}
else if(c.equals("/")){
if(b!=0)
this.res = a / b;
}
}
}
2-link.html
<a href="login.html">Login</a> |
<a href="LogoutServlet">Logout</a> |
<a href="ProfileServlet">Profile</a>
<hr>
3-login.html
<form action="LoginServlet" method="post">
Name:<input type="text" name="name"><br>
Password:<input type="password" name="password"><br>
<input type="submit" value="login">
</form>
4 -LoginServlet.java
package servlets;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpSession;
import java.io.IOException;
import java.io.PrintWriter;
String name=request.getParameter("name");
String password=request.getParameter("password");
if(password.equals("admin123")){
out.print("Welcome, "+name);
HttpSession session=request.getSession();
session.setAttribute("name",name);
}
else{
out.print("Sorry, username or password error!");
request.getRequestDispatcher("login.html").include(request, response);
}
out.close();
}
}
5-LogoutServlet.java
package servlets;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpSession;
import java.io.IOException;
import java.io.PrintWriter;
request.getRequestDispatcher("link.html").include(request, response);
HttpSession session=request.getSession();
session.invalidate();
out.close();
}
}
6-ProfileServlet.java
package servlets;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpSession;
import java.io.IOException;
import java.io.PrintWriter;
HttpSession session=request.getSession(false);
if(session!=null){
String name=(String)session.getAttribute("name");
1-index.html
<form action="servlet1">
Name:<input type="text" name="name"/><br/>
Password:<input type="password" name="password"/><br/>
</form>
2-MyFilter.java
PrintWriter out=resp.getWriter();
String password=req.getParameter("password");
if(password.equals("admin")){
chain.doFilter(req, resp);//sends request to next resource
}
else{
out.print("username or password error!");
RequestDispatcher rd=req.getRequestDispatcher("index.html");
rd.include(req, resp);
}
}}
3-AdminServlet.java
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.print("welcome ADMIN");
out.close();
} }
<servlet-mapping>
<servlet-name>AdminServlet</servlet-name>
<url-pattern>/servlet1</url-pattern>
</servlet-mapping>
<filter>
<filter-name>f1</filter-name>
<filter-class>servlets.MyFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>f1</filter-name>
<url-pattern>/servlet1</url-pattern>
</filter-mapping>
</web-app>
1-index.html
package servs;
3-EmpDao.java
package servs;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
con=DriverManager.getConnection("jdbc:mysql://localhost/crud_servlet?" +
status=ps.executeUpdate();
con.close();
}catch(Exception ex){ex.printStackTrace();}
return status;
}
public static int update(Emp e){
int status=0;
try{
Connection con=EmpDao.getConnection();
PreparedStatement ps=con.prepareStatement("update users set
name=?,password=?,email=?,country=? where id=?");
ps.setString(1,e.getName());
ps.setString(2,e.getPassword());
ps.setString(3,e.getEmail());
ps.setString(4,e.getCountry());
ps.setInt(5,e.getId());
status=ps.executeUpdate();
con.close();
}catch(Exception ex){ex.printStackTrace();}
return status;
}
public static int delete(int id){
int status=0;
try{
Connection con=EmpDao.getConnection();
PreparedStatement ps=con.prepareStatement("delete from users
where id=?");
ps.setInt(1,id);
status=ps.executeUpdate();
con.close();
}catch(Exception e){e.printStackTrace();}
return status;
}
public static Emp getEmployeeById(int id){
Emp e=new Emp();
try{
return e;
}
public static List<Emp> getAllEmployees(){
List<Emp> list=new ArrayList<Emp>();
try{
Connection con=EmpDao.getConnection();
PreparedStatement ps=con.prepareStatement("select * from
users");
ResultSet rs=ps.executeQuery();
while(rs.next()){
Emp e=new Emp();
e.setId(rs.getInt(1));
e.setName(rs.getString(2));
e.setPassword(rs.getString(3));
e.setEmail(rs.getString(4));
e.setCountry(rs.getString(5));
list.add(e);
}
con.close();
}catch(Exception e){e.printStackTrace();}
return list;
}
}
4-SaveServle.java
package servs;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
@SuppressWarnings("serial")
@WebServlet("/SaveServlet")
public class SaveServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
String name=request.getParameter("name");
String password=request.getParameter("password");
String email=request.getParameter("email");
String country=request.getParameter("country");
int status=EmpDao.save(e);
if(status>0){
out.print("<p>Record saved successfully!</p>");
request.getRequestDispatcher("index.html").include(request,
response);
}else{
out.println("Sorry! unable to save record");
}
out.close();
}}
5-ViewServlet.java
List<Emp> list=EmpDao.getAllEmployees();
out.print("<tr><th>Id</th><th>Name</th><th>Password</th><th>Email</th><th>Co
untry</th><th>Edit</th><th>Delete</th></tr>");
for(Emp e:list){
out.print("<tr><td>"+e.getId()+"</td><td>"+e.getName()+"</td><td>"+e.getPass
word()+"</td><td>"+e.getEmail()+"</td><td>"+e.getCountry()+"</td><td><a
href='EditServlet?id="+e.getId()+"'>edit</a></td><td><a
href='DeleteServlet?id="+e.getId()+"'>delete</a></td></tr>");
}
out.print("</table>");
out.close();
}
Emp e=EmpDao.getEmployeeById(id);
out.close();
}
7- EditServlet2.java
String sid=request.getParameter("id");
int id=Integer.parseInt(sid);
String name=request.getParameter("name");
String password=request.getParameter("password");
String email=request.getParameter("email");
String country=request.getParameter("country");
int status=EmpDao.update(e);
if(status>0){
response.sendRedirect("ViewServlet");
}else{
out.println("Sorry! unable to update record");
}
out.close();
}
8-DeleteServlet.java
Le résultat :