From 4e71a942bd542213bbbffbf2da4e2d12225c366d Mon Sep 17 00:00:00 2001 From: Alexandre Dehaine <alexandredehaine@outlook.fr> Date: Wed, 5 Mar 2025 12:00:46 +0100 Subject: [PATCH] progress --- WEB-INF/classes/dao/Conversation.class | Bin 771 -> 875 bytes WEB-INF/classes/dao/ConversationDao.class | Bin 0 -> 575 bytes WEB-INF/classes/dao/ConversationJdbcDao.class | Bin 0 -> 6695 bytes WEB-INF/classes/dao/Message.class | Bin 1826 -> 1826 bytes WEB-INF/classes/dao/MessageDao.class | Bin 527 -> 527 bytes WEB-INF/classes/dao/MessageJdbcDao.class | Bin 5875 -> 5875 bytes WEB-INF/classes/dao/UtilisateurJdbcDao.class | Bin 5513 -> 5501 bytes WEB-INF/src/dao/ConversationDao.java | 1 + WEB-INF/src/dao/ConversationJdbcDao.java | 27 +++++-- WEB-INF/src/dao/Message.java | 2 +- WEB-INF/src/dao/MessageJdbcDao.java | 11 ++- accueil.jsp | 66 ++++++++++++++++++ monobjet.jsp | 20 ------ 13 files changed, 99 insertions(+), 28 deletions(-) create mode 100644 WEB-INF/classes/dao/ConversationDao.class create mode 100644 WEB-INF/classes/dao/ConversationJdbcDao.class create mode 100644 accueil.jsp delete mode 100644 monobjet.jsp diff --git a/WEB-INF/classes/dao/Conversation.class b/WEB-INF/classes/dao/Conversation.class index 757e7cbaec5048fa6767b524a70b4c8881bc17ef..371c092f728d39d0d6c485973e5fd70d04b310f4 100644 GIT binary patch delta 396 zcmZo>d(Fmm>ff$?3=9mm3>p);?%LXDc=}`|mL=-vB<7{-2bUCO=A~Qvq$K9+hn8gK zWELluq?Q(0LzI+c=BDcV<R>TQxFnXOT5E=Fd@96PFUi2jAjQDI;Ksnjz{<eDAf>gP zfl*6(D+9ZhB+FI?UM-!i41!v^TNy+*GB7YOGDw5eFt9N&FmN-lFz_&NGVn6+Gw?Bp zFz_=-G6*m*GRQE<Ld^uxj0_A6tXf+b*w?_dvoU}Kg%}ta<QVGZv8d(UfTmWIfssLh zK@p2mL3E`O42%p)49ZxPilQr(W?*D6S7A_vs#RiOVqjumU|`eI-pU||@GTcuRE~j_ O0pwOS1_lNu26X_ty)$0` delta 258 zcmaFO*38Cr>ff$?3=9mm4C)iP?rv6N6ks%9V_;;EWME*BWng4rWME)m)!NR$xRHT@ zfssLqfq?-e&A`CQz{nuYAOli5xt~ca8zIBZz{nuWAP15`F=Pt^?*=qO_!t-&<QWvO zC>2CkD#*adpva&EQaV|HS<Dq-p9ljZgEE5(NQQxdL5YEhfeGYFE$yugf(Tc0fknj` RSQ#W37#UO<7#Nrs)Bw^f6$t<U diff --git a/WEB-INF/classes/dao/ConversationDao.class b/WEB-INF/classes/dao/ConversationDao.class new file mode 100644 index 0000000000000000000000000000000000000000..9f49a0f6e0117fa17fa6eab5fa2f8874b9847139 GIT binary patch literal 575 zcmX^0Z`VEs1_oOOF?I$fMh4-O#C(0{{JgT%qT<Ao%=|o;#C&!J7Dfhvti-ZJ{hY+S zbbbG%tkmQZMh1?w%)At*O3xHV22l-9O&@fv){G4NASI4DIligI#fj;u#f%KXAeCUV zN=q_x^nEgmORO0gID<3O^Abx+i&7aGlrUA;fX#*)Vr^&5$RG?gIJ6`)C$l)QB(=1t zn2|vZmsTWYVC`HW?M{`U#i>P%3@REvU<ZLc7hF=5nU`*@2@yheqXiMlAPz+iKd^N| z$wjG&C8@~bAjd-NK(-d_Ph`hxMlmu7rKIMhqU&bS@C3<m1?QI*C8xS&=A<$*h#*_w zl9;at@)jE-10w@70|>COFfy<*urYw*lbwNsfsuiefq{XEfs2Kafg6d>!@|hG%fJVh Y=Lf|<gCJO+5Q8uS0|O(22w0~m0L#*y>;M1& literal 0 HcmV?d00001 diff --git a/WEB-INF/classes/dao/ConversationJdbcDao.class b/WEB-INF/classes/dao/ConversationJdbcDao.class new file mode 100644 index 0000000000000000000000000000000000000000..d12c821c417bc2040428c62041dc7de3593f5a69 GIT binary patch literal 6695 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�Y|9^LjhQ% z08E!MR5R3pvuzMV2SYSCgM(<~C@o^(VJK!0VJKmcVJKx#V<=<LV<=}ZWvF1VW~gMa zW2j;XVyI*YWhi3kV5nl~WT<AC!BE36hoKG}rPZJ)^#IrQ@RAqQu!F@WC|;lvpn#@s zG0g;;u7E@uLoow011kdqgSyacAECLvLi7EE7Fw}r?_gLQuA?i-vV&pe2A@p~vD(`h zHg023VcY=jMMyG8F|22RgoYZpbZ=!~W@uwzV`yjKWawbvW$0oMV(4a&V(4X%X6R#3 zWta%|H5&tC6g$Iu24;q1;I_qah7;hv2|L3{21bVSVDciEybLC<g30S(@+O$P&2Sgo PS7Bth$MAsR5rZTEKh!`s literal 0 HcmV?d00001 diff --git a/WEB-INF/classes/dao/Message.class b/WEB-INF/classes/dao/Message.class index cc820cf022b37167e583f73e521086adb6af220d..7c7ecb66901903a3355227369aec6d02561d6767 100644 GIT binary patch delta 64 zcmZ3)w}@}UAI8bNOx6NEDT(>|p(U9)nZ=1Esij4m-I;ze2}`nVWf0KP-O3=MCCRdt UK|)KCb#gGPBBRLWQr5MM0Hq!hs{jB1 delta 64 zcmZ3)w}@}UA4Y+c#C-kGlFXdU;>42F(jx20zZq>ddocZA64u?yAfP45vXwzZOOkaf UgM^kO+vH$YMMmMxrL1ci0n|4WhX4Qo diff --git a/WEB-INF/classes/dao/MessageDao.class b/WEB-INF/classes/dao/MessageDao.class index 26af40efa79f0a130f244ec0ba6c1271a574d943..b83f04c8d5bdc967f92a1fabc0b6a3e163658755 100644 GIT binary patch delta 13 UcmeBY>1Wx{%gC5IxsS0C03PH7ZU6uP delta 13 UcmeBY>1Wx{%gE?DxsS0C03JjHP5=M^ diff --git a/WEB-INF/classes/dao/MessageJdbcDao.class b/WEB-INF/classes/dao/MessageJdbcDao.class index 1d1161b7f802a66ba7e552fe6e2037f69d8328ec..351df4f3a66ea2b41e6fc91905ccf6d72d6fe751 100644 GIT binary patch delta 333 zcmeyY`&oBG92aBi=6Eh!7F%Hk9tIHx5e88P83r*1H3o48Jq8JeQU*ze8U`tbCI)GS zHU=4nSq#z)a~XsgE-=V2Tx5`Cc)%dX@Pt8O^G&{IjE-syJPhg#;tU!L@(h{`nhaVD zMhw~vHVirpJq&sblNt0GW-=Hs%w;fS*vMeOu!TX5;W>jL!wUu@hVKl<48Ivn7YQ;s zS~Ku4*f5AQ*fPj7*fD4_*fSV0I55~SI5PAwI5SLUaABCq;L0$U!Hr=fgDb-p25W}r z3~mfB7~C1YGk7rkX7JkVD7=}`GJt`fA&^0aA&5bRA(%m*A%wx4A(X+6A&kM5A)LX3 zA%Y=+A)FzZA%I~nLj=QohDe6>3{ebQ7-A;tie6z%p3Ees&zL#cNGwFLfPtBzkb#Y% hh=G%#n1Pp}ltGB0j6sT_f<c<0l0lWBX7X||9{@;yK#c$Z delta 333 zcmeyY`&oBG92cYO=6Eh!7F!_(9tL3s5e5+k83s`XH3l&TJqB@xQU(cz8U{&*CI%^n zHU?>iSqxGPa~XsfE-*+lTx5`8c)%db@Pt8r^G&{IjE*V{JPfJ~;tXmG@(k(>nhY8Y zMhuz^HVj$}Jq$VwlNodwW-{n8%w^DL*vO#Au!TW|;W>jo!wUujhVKl948IwS7YQ;s zS}^c1STcw+STV>mScA12G1xNLFxWBlFgP$wW^iPf$>78=m%*7~BZCve76uE3=M2sa zFBn`HzB9No{AO_9>?pjM(b9*3pTU<whQW_Pg~6XepCN$3oFS0Gjv<J_l_8kHgCT?= zfgzY7nZbu)E<*^ze1=el^$cMQTNolH>xy1sjGN3Prq7r%*+?uzF`I#zA%}sDA(w%Z eA&-HVp@2b%p^!m}p_oCMp@cz|p?vakF&_ZA=RcJI diff --git a/WEB-INF/classes/dao/UtilisateurJdbcDao.class b/WEB-INF/classes/dao/UtilisateurJdbcDao.class index 3a51462580193c7d95a6c3e3e70225608c29039e..a69ee09e83de279fe6e721d0b88ca1376ea9e25d 100644 GIT binary patch delta 20 bcmeCw{;Rb?oQqw<#ns0(#C5Y4S3EZWMHdC& delta 32 ncmeyX)v3KfoJ-im#ns0(#8n}*Br_+oII$$Pv}m&&S3EZWvjqyL diff --git a/WEB-INF/src/dao/ConversationDao.java b/WEB-INF/src/dao/ConversationDao.java index a2825b1..d62cbee 100644 --- a/WEB-INF/src/dao/ConversationDao.java +++ b/WEB-INF/src/dao/ConversationDao.java @@ -6,6 +6,7 @@ public interface ConversationDao { Conversation findById(int idConv); List<Message> findAllMessages(int idConv); List<Utilisateur> findAllUtilisateurs(int idConv); + List<Conversation> findByUser(String email); boolean createConversation(String nomConv, Utilisateur createur); boolean deleteConversation(int idConv); } diff --git a/WEB-INF/src/dao/ConversationJdbcDao.java b/WEB-INF/src/dao/ConversationJdbcDao.java index bf12409..2e96f1a 100644 --- a/WEB-INF/src/dao/ConversationJdbcDao.java +++ b/WEB-INF/src/dao/ConversationJdbcDao.java @@ -6,7 +6,6 @@ import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.time.LocalDate; -import java.time.LocalTime; import java.util.ArrayList; import java.util.List; @@ -16,7 +15,7 @@ public class ConversationJdbcDao implements ConversationDao{ @Override public Conversation findById(int idConv) { try (Connection con = getCon(); Statement stmt = con.createStatement()) { - String sql = "SELECT * FROM Conversation WHERE idConv = "+ idConv +";"; + String sql = "SELECT * FROM Conversations WHERE idConv = "+ idConv +";"; System.err.println(sql); ResultSet rs = stmt.executeQuery(sql); rs.next(); @@ -31,15 +30,35 @@ public class ConversationJdbcDao implements ConversationDao{ return new Conversation(0, "err", new Utilisateur("err","err" , "err"),LocalDate.now()); } + @Override + public List<Conversation> findByUser(String email) { + try (Connection con = getCon(); Statement stmt = con.createStatement()) { + String sql = "SELECT DISTINCT idConv FROM Messages WHERE utilisateur = '"+ email +"';"; + System.err.println(sql); + ResultSet rs = stmt.executeQuery(sql); + List<Conversation> list = new ArrayList<Conversation>(); + while(rs.next()){ + list.add(findById(rs.getInt(1))); + } + rs.close(); + con.close(); + return list; + }catch (SQLException e) { + System.out.println("Erreur lors de l'accès à la base de données : " + e.getMessage()); + e.printStackTrace(); + } + return new ArrayList<Conversation>(); + } + @Override public List<Message> findAllMessages(int idConv) { try (Connection con = getCon(); Statement stmt = con.createStatement()) { - String sql = "SELECT * FROM Message WHERE idConv = "+idConv+";"; + String sql = "SELECT * FROM Messages WHERE idConv = "+idConv+";"; System.err.println(sql); ResultSet rs = stmt.executeQuery(sql); List<Message> list = new ArrayList<Message>(); while(rs.next()){ - list.add(new Message(rs.getInt(1), rs.getInt(2), jdbcUser.findByEmail(rs.getString(3)), rs.getDate(4).toLocalDate() , rs.getTime(5).toLocalTime(), rs.getString(6))); + list.add(new Message(rs.getInt(1), rs.getInt(2), rs.getDate(3).toLocalDate(), rs.getTime(4).toLocalTime(), rs.getString(5), jdbcUser.findByEmail(rs.getString(6)))); } rs.close(); con.close(); diff --git a/WEB-INF/src/dao/Message.java b/WEB-INF/src/dao/Message.java index 2d048c0..d3f2676 100644 --- a/WEB-INF/src/dao/Message.java +++ b/WEB-INF/src/dao/Message.java @@ -10,7 +10,7 @@ public class Message { LocalDate jour; LocalTime heure; String message; - public Message(int idMessage, int idConv, Utilisateur utilisateur, LocalDate jour, LocalTime heure, String message) { + public Message(int idMessage, int idConv, LocalDate jour, LocalTime heure, String message, Utilisateur utilisateur) { this.idMessage = idMessage; this.idConv = idConv; this.utilisateur = utilisateur; diff --git a/WEB-INF/src/dao/MessageJdbcDao.java b/WEB-INF/src/dao/MessageJdbcDao.java index b74e732..561b27f 100644 --- a/WEB-INF/src/dao/MessageJdbcDao.java +++ b/WEB-INF/src/dao/MessageJdbcDao.java @@ -13,6 +13,7 @@ import java.util.List; public class MessageJdbcDao implements MessageDao{ UtilisateurJdbcDao jdbcUser = new UtilisateurJdbcDao(); + //find a message by its id @Override public Message findById(int idMessage) { try (Connection con = getCon(); Statement stmt = con.createStatement()) { @@ -20,7 +21,7 @@ public class MessageJdbcDao implements MessageDao{ System.err.println(sql); ResultSet rs = stmt.executeQuery(sql); rs.next(); - Message message = new Message(rs.getInt(1), rs.getInt(2), jdbcUser.findByEmail(rs.getString(3)), rs.getDate(4).toLocalDate() , rs.getTime(5).toLocalTime(), rs.getString(6)); + Message message = new Message(rs.getInt(1), rs.getInt(2), rs.getDate(3).toLocalDate(), rs.getTime(4).toLocalTime(), rs.getString(5), jdbcUser.findByEmail(rs.getString(6))); rs.close(); con.close(); return message; @@ -28,9 +29,10 @@ public class MessageJdbcDao implements MessageDao{ System.out.println("Erreur lors de l'accès à la base de données : " + e.getMessage()); e.printStackTrace(); } - return new Message(0, 0, new Utilisateur("err","err" , "err"),LocalDate.now(), LocalTime.now(), "err"); + return new Message(0, 0, Date.getDate(3).toLocalDate(), rs.getTime(4).toLocalTime(), rs.getString(5), jdbcUser.findByEmail(rs.getString(6))); // requette d'erreur de message } + //find all message from one user @Override public List<Message> findAll(Utilisateur utilisateur) { try (Connection con = getCon(); Statement stmt = con.createStatement()) { @@ -39,7 +41,7 @@ public class MessageJdbcDao implements MessageDao{ ResultSet rs = stmt.executeQuery(sql); List<Message> list = new ArrayList<Message>(); while(rs.next()){ - list.add(new Message(rs.getInt(1), rs.getInt(2), jdbcUser.findByEmail(rs.getString(3)), rs.getDate(4).toLocalDate() , rs.getTime(5).toLocalTime(), rs.getString(6))); + list.add(new Message(rs.getInt(1), rs.getInt(2), rs.getDate(3).toLocalDate(), rs.getTime(4).toLocalTime(), rs.getString(5), jdbcUser.findByEmail(rs.getString(6)))); } rs.close(); con.close(); @@ -51,6 +53,7 @@ public class MessageJdbcDao implements MessageDao{ return new ArrayList<Message>(); } + //find all the messages from a cnversation @Override public List<Message> findAll(Conversation conversation) { try (Connection con = getCon(); Statement stmt = con.createStatement()) { @@ -71,6 +74,7 @@ public class MessageJdbcDao implements MessageDao{ return new ArrayList<Message>(); } + //create a new message in a conv @Override public boolean createMessage(Utilisateur utilisateur, String message, int idConv) { try (Connection con = getCon(); Statement stmt = con.createStatement()) { @@ -88,6 +92,7 @@ public class MessageJdbcDao implements MessageDao{ return false; } + //update a message @Override public boolean updateMessage(int idMessage, String message) { // TODO Auto-generated method stub diff --git a/accueil.jsp b/accueil.jsp new file mode 100644 index 0000000..dd9cdb3 --- /dev/null +++ b/accueil.jsp @@ -0,0 +1,66 @@ +<%@ page pageEncoding="UTF-8" %> +<%@ page import="dao.*" %> +<%@ page import="java.util.List" %> +<%@ page import="jakarta.servlet.*" %> +<!DOCTYPE html> +<html> + +<head> + <title> Accueil </title> + <%-- <% response.setIntHeader("Refresh", 5); %> --%> +</head> + +<body> + <% + UtilisateurJdbcDao jdbcUser = new UtilisateurJdbcDao(); + Utilisateur utilisateur= jdbcUser.findByEmail("alexandre.dehaine.etu@univ-lille.fr"); + out.println(utilisateur); + + ConversationJdbcDao jdbcConv = new ConversationJdbcDao(); + List<Conversation> conv = jdbcConv.findByUser(utilisateur.getEmail()); + + %> + <br> + <style> + table, th, td { + border: 1px solid black; + } + </style> + <table> + <tr> + <th>idConv</th> + <th>nomConv</th> + <th>createur</th> + <th>dateCrea</th> + </tr> + <% for (int i = 0; i < conv.size(); i++){ + out.println("<tr>"); + out.println("<td>" + conv.get(i).getIdConv() + "</td>"); + out.println("<td>" + conv.get(i).getNomConv() + "</td>"); + out.println("<td>" + conv.get(i).getCreateur() + "</td>"); + out.println("<td>" + conv.get(i).getDateCrea() + "</td>"); + out.println("</tr>"); + } + + String stringConv = request.getParameter("idConv"); + int selectedConvId; + try{ + selectedConvId = Integer.parseInt(stringConv); + } catch (NumberFormatException e){ + selectedConvId = 0; + } + out.println(selectedConvId); + + List<Message> selectedConv = jdbcConv.findAllMessages(selectedConvId); + for(int i =0; i < selectedConv.size();i++){ + out.println(selectedConv.get(i) + "<br>"); + } + + + %> + </table> + + +</body> + +</html> diff --git a/monobjet.jsp b/monobjet.jsp deleted file mode 100644 index 28f5a31..0000000 --- a/monobjet.jsp +++ /dev/null @@ -1,20 +0,0 @@ -<%@ page pageEncoding="UTF-8" %> -<%@ page import="dao.*" %> -<!DOCTYPE html> -<html> - -<head> - <title> MaPage </title> -</head> - -<body> - <% - UtilisateurJdbcDao jdbcUser = new UtilisateurJdbcDao(); - Utilisateur utilisateur= jdbcUser.findByEmail("alexandre.dehaine.etu@univ-lille.fr"); - out.println(utilisateur); - %> - <br> - -</body> - -</html> -- GitLab