Files
tpjpa/src/main/java/fr/istic/taa/jaxrs/DAO/UtilisateurDAO.java
2025-10-24 19:39:02 +02:00

41 lines
1.2 KiB
Java

package fr.istic.taa.jaxrs.DAO;
import jakarta.persistence.EntityTransaction;
import fr.istic.taa.jaxrs.metier.Session;
import fr.istic.taa.jaxrs.metier.Utilisateur;
import java.util.List;
public class UtilisateurDAO extends AbstractJpaDao<Integer, Utilisateur> {
public UtilisateurDAO() {
super();
this.setClass(Utilisateur.class);
}
public Utilisateur findByEmail(String email) {
List<Utilisateur> results =
em.createQuery("SELECT u FROM Utilisateur u WHERE u.email = :email", Utilisateur.class)
.setParameter("email", email).getResultList();
if (results.isEmpty()) {
return null;
} else {
return results.get(0);
}
}
public void addToSession(int sessionId, int userId) {
EntityTransaction t = em.getTransaction();
t.begin();
Session s = em.find(Session.class, sessionId);
Utilisateur u = em.find(Utilisateur.class, userId);
//FAUT AJOUTER OWNING SIDE ( Ici u --> s)
u.getSessions().add(s);
//Jsp il faut birectionnelle ou pas?
//s.getUtilisateurs().add(u);
em.merge(u);
t.commit();
}
}