Files
tpjpa/src/main/java/DAO/UtilisateurDAO.java
2025-09-29 23:08:56 +02:00

38 lines
1.1 KiB
Java

package DAO;
import jakarta.persistence.EntityTransaction;
import jakarta.persistence.Query;
import metier.Session;
import metier.Utilisateur;
public class UtilisateurDAO extends AbstractJpaDao<Integer, Utilisateur> {
public UtilisateurDAO() {
super();
this.setClass(Utilisateur.class);
}
public Utilisateur findByEmail(String email){
EntityTransaction t=em.getTransaction();
t.begin();
Query query=em.createQuery("select u from Utilisateur u where u.email=:email");
query.setParameter("email",email);
Utilisateur u=(Utilisateur)query.getSingleResult();
t.commit();
return u;
}
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.getSession().add(s);
//Jsp il faut birectionnelle ou pas?
s.getUtilisateurs().add(u);
em.merge(u);
t.commit();
}
}