1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| public HashMap<Utilisateur,Boolean> getContactsByUser(String pseudo, String currentUser){
try (Connection con = Connexion.getConnection()){
HashMap<Utilisateur,Boolean> contacts = new HashMap<Utilisateur,Boolean>();
String requete = "SELECT * FROM utilisateur WHERE pseudo_user LIKE ?";
PreparedStatement stmt1 = con.prepareStatement(requete);
stmt1.setString(1, pseudo+"%");
ResultSet rs = stmt1.executeQuery();
Utilisateur contact;
String requete2 = "SELECT * FROM contact WHERE user1=? AND user2=? OR user1=? AND user2=?";
ResultSet rs2;
PreparedStatement stmt2;
while(rs.next()){
contact = new Utilisateur(rs.getString("mail_user"),rs.getString("pseudo_user"),rs.getString("nom_user"),rs.getString("prenom_user"),rs.getString("img_user"),rs.getInt("sexe_user"),rs.getDate("naiss_user"));
stmt2 = con.prepareStatement(requete2);
stmt2.setString(1, currentUser);
stmt2.setString(2, rs.getString("mail_user"));
stmt2.setString(3, rs.getString("mail_user"));
stmt2.setString(4, currentUser);
rs2 = stmt2.executeQuery();
if(rs2.next()){
contacts.put(contact,true);
}else{
contacts.put(contact,false);
}
}
return contacts;
} catch (SQLException | NamingException e) {
e.printStackTrace();
}
return null;
} |