diff --git a/WEB-INF/classes/controleurs/Authent.class b/WEB-INF/classes/controleurs/Authent.class new file mode 100644 index 0000000000000000000000000000000000000000..841d724b8012447359d0711a26fbc4b0ee548140 Binary files /dev/null and b/WEB-INF/classes/controleurs/Authent.class differ diff --git a/WEB-INF/classes/dao/BDConnection.class b/WEB-INF/classes/dao/BDConnection.class new file mode 100644 index 0000000000000000000000000000000000000000..6b3325e1ced614f09b6a9275af2cad4b7b997aa2 Binary files /dev/null and b/WEB-INF/classes/dao/BDConnection.class differ diff --git a/WEB-INF/classes/dao/ThreadDAO.class b/WEB-INF/classes/dao/ThreadDAO.class new file mode 100644 index 0000000000000000000000000000000000000000..ef0aae4be374788722b26bc004cdd42473a527db Binary files /dev/null and b/WEB-INF/classes/dao/ThreadDAO.class differ diff --git a/WEB-INF/classes/dao/UserDAO.class b/WEB-INF/classes/dao/UserDAO.class new file mode 100644 index 0000000000000000000000000000000000000000..2b146d9e13057def2b643680175992f1e3b73880 Binary files /dev/null and b/WEB-INF/classes/dao/UserDAO.class differ diff --git a/WEB-INF/classes/dto/Message.class b/WEB-INF/classes/dto/Message.class new file mode 100644 index 0000000000000000000000000000000000000000..a91eac8c0a1ae6404e32678bf8860f583808de33 Binary files /dev/null and b/WEB-INF/classes/dto/Message.class differ diff --git a/WEB-INF/classes/dto/MyThread.class b/WEB-INF/classes/dto/MyThread.class new file mode 100644 index 0000000000000000000000000000000000000000..8c127db19d1e39876380fc114016d05ece1d97a0 Binary files /dev/null and b/WEB-INF/classes/dto/MyThread.class differ diff --git a/WEB-INF/classes/dto/User.class b/WEB-INF/classes/dto/User.class new file mode 100644 index 0000000000000000000000000000000000000000..f50d946b40778ea273b1deb984cd195ee4cd008f Binary files /dev/null and b/WEB-INF/classes/dto/User.class differ diff --git a/WEB-INF/src/controleurs/Authent.java b/WEB-INF/src/controleurs/Authent.java index 7e2aecaa3955fd9108188672d55a0664aa82448d..ff268109babab46a5cadf06dd41c78acdd551489 100644 --- a/WEB-INF/src/controleurs/Authent.java +++ b/WEB-INF/src/controleurs/Authent.java @@ -4,18 +4,42 @@ package controleurs; import dao.BDConnection; import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; -import java.net.http.HttpRequest; -import java.net.http.HttpResponse; +import java.io.IOException; +import java.io.PrintWriter; import java.sql.Connection; import java.sql.PreparedStatement; +import java.sql.ResultSet; import java.sql.SQLException; @WebServlet("/Authentification") public class Authent extends HttpServlet { private Connection con = new BDConnection().getConnection(); - public void services(HttpResponse res, HttpRequest req) throws SQLException { - PreparedStatement stmt = con.prepareStatement(""); + @Override + public void service(HttpServletRequest req, HttpServletResponse res){ + try { + PrintWriter out = res.getWriter(); + + String log = req.getParameter("login"); + String pwd = req.getParameter("pwd"); + + PreparedStatement stmt = con.prepareStatement("SELECT username,password FROM userAccount WHERE username=? AND password=?"); //à changer pour utiliser le DAO + stmt.setString(1, log); + stmt.setString(2, pwd); + + ResultSet rs = stmt.executeQuery(); + + if (rs.next()) { + out.println("<h1>Bienvenue " + log + " !</h1>"); + } else { + out.println("<h1>Login ou mot de passe incorrect</h1>"); + } + + }catch (SQLException | IOException except){ + except.getStackTrace(); + } } } diff --git a/WEB-INF/src/dao/UserDAO.java b/WEB-INF/src/dao/UserDAO.java index a24270ef9dbf9768ab20c65de81ccdef496ff1db..794b8d66931edc06878b0d4cba4ce4dcdc7aa622 100644 --- a/WEB-INF/src/dao/UserDAO.java +++ b/WEB-INF/src/dao/UserDAO.java @@ -2,6 +2,8 @@ package dao; import java.sql.*; import java.time.LocalDate; +import java.util.ArrayList; +import java.util.List; import dto.Message; import dto.User; @@ -14,8 +16,9 @@ public class UserDAO extends HttpServlet{ this.con = new BDConnection().getConnection(); } - public String getAllUsers(){ + public List<User> getAllUsers(){ StringBuilder txt = new StringBuilder(); + ArrayList<User> users = new ArrayList<>(); try{ Statement stmt = this.con.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM userAccount;"); @@ -25,17 +28,20 @@ public class UserDAO extends HttpServlet{ String username = rs.getString(2); String pwd = rs.getString(3); - txt.append("Id : ").append(userId).append(" Username : ").append(username).append(" Password : ").append(pwd).append('\n'); + User nUser = new User(userId, username, pwd); + users.add(nUser); } } catch (SQLException sqle) { sqle.getStackTrace(); } - return txt.toString(); + return users; } - public String getUserById(int id){ + public User getUserById(int id){ StringBuilder txt = new StringBuilder(); + User user = new User(0,null,null); + try{ PreparedStatement stmt = this.con.prepareStatement("SELECT * FROM userAccount WHERE id=?"); stmt.setInt(1, id); @@ -46,21 +52,20 @@ public class UserDAO extends HttpServlet{ String username = rs.getString(2); String pwd = rs.getString(3); - txt.append("Id : ").append(userId).append(" Username : ").append(username).append(" Password : ").append(pwd).append('\n'); + user = new User(userId,username,pwd); } } catch (SQLException sqle) { sqle.getStackTrace(); } - return txt.toString(); + return user; } public void addUser(User nUser){ try{ - PreparedStatement stmt = this.con.prepareStatement("INSERT INTO userAccount VALUES (?,?,?)"); - stmt.setInt(1, nUser.getId()); - stmt.setString(2, nUser.getUserName()); - stmt.setString(3, nUser.getPwd()); + PreparedStatement stmt = this.con.prepareStatement("INSERT INTO userAccount (username, password) VALUES (?,?)"); + stmt.setString(1, nUser.getUserName()); + stmt.setString(2, nUser.getPwd()); stmt.executeUpdate(); @@ -72,7 +77,7 @@ public class UserDAO extends HttpServlet{ public void removeUser(User nUser){ try{ PreparedStatement stmt = this.con.prepareStatement("DELETE FROM userAccount WHERE userID=?"); - stmt.setInt(1, nUser.getId()); + stmt.setInt(1, nUser.getID()); stmt.executeUpdate(); diff --git a/s4a021-web-backend.iml b/s4a021-web-backend.iml index 486318c71fbe50c0c7c5da014258f15be2e685e3..113d0c2ccf0ac95a657495ed8b3f46bec28b4197 100644 --- a/s4a021-web-backend.iml +++ b/s4a021-web-backend.iml @@ -1,6 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <module type="JAVA_MODULE" version="4"> - <component name="NewModuleRootManager" inherit-compiler-output="true"> + <component name="NewModuleRootManager"> + <output url="file://$MODULE_DIR$/WEB-INF/classes" /> + <output-test url="file://$MODULE_DIR$/out/test/s4a021-web-backend/classes" /> <exclude-output /> <content url="file://$MODULE_DIR$"> <sourceFolder url="file://$MODULE_DIR$/WEB-INF/src" isTestSource="false" />