From d47024314a2785f3dffaf5a84bcb4f6f169c9447 Mon Sep 17 00:00:00 2001 From: tuanvu Date: Wed, 17 Sep 2025 15:32:50 +0200 Subject: [PATCH] DAO --- src/main/java/DAO/ChoixDAO.java | 4 ++++ src/main/java/DAO/QuestionDAO.java | 4 ++++ src/main/java/DAO/QuizzDAO.java | 4 ++++ src/main/java/DAO/ReponseCourteDAO.java | 5 ++++ src/main/java/DAO/ReponseDAO.java | 4 ++++ src/main/java/DAO/SessionDAO.java | 4 ++++ src/main/java/DAO/Tous.java | 14 +++++++++++ src/main/java/DAO/TousDAOImpl.java | 31 +++++++++++++++++++++++++ src/main/java/DAO/UtilisateurDAO.java | 4 ++++ 9 files changed, 74 insertions(+) create mode 100644 src/main/java/DAO/ChoixDAO.java create mode 100644 src/main/java/DAO/QuestionDAO.java create mode 100644 src/main/java/DAO/QuizzDAO.java create mode 100644 src/main/java/DAO/ReponseCourteDAO.java create mode 100644 src/main/java/DAO/ReponseDAO.java create mode 100644 src/main/java/DAO/SessionDAO.java create mode 100644 src/main/java/DAO/Tous.java create mode 100644 src/main/java/DAO/TousDAOImpl.java create mode 100644 src/main/java/DAO/UtilisateurDAO.java diff --git a/src/main/java/DAO/ChoixDAO.java b/src/main/java/DAO/ChoixDAO.java new file mode 100644 index 0000000..d48071f --- /dev/null +++ b/src/main/java/DAO/ChoixDAO.java @@ -0,0 +1,4 @@ +package DAO; + +public class ChoixDAO { +} diff --git a/src/main/java/DAO/QuestionDAO.java b/src/main/java/DAO/QuestionDAO.java new file mode 100644 index 0000000..102d33f --- /dev/null +++ b/src/main/java/DAO/QuestionDAO.java @@ -0,0 +1,4 @@ +package DAO; + +public class QuestionDAO { +} diff --git a/src/main/java/DAO/QuizzDAO.java b/src/main/java/DAO/QuizzDAO.java new file mode 100644 index 0000000..460421c --- /dev/null +++ b/src/main/java/DAO/QuizzDAO.java @@ -0,0 +1,4 @@ +package DAO; + +public class QuizzDAO { +} diff --git a/src/main/java/DAO/ReponseCourteDAO.java b/src/main/java/DAO/ReponseCourteDAO.java new file mode 100644 index 0000000..8ec07ba --- /dev/null +++ b/src/main/java/DAO/ReponseCourteDAO.java @@ -0,0 +1,5 @@ +package DAO; + +public class ReponseCourteDAO { + +} diff --git a/src/main/java/DAO/ReponseDAO.java b/src/main/java/DAO/ReponseDAO.java new file mode 100644 index 0000000..3f82a85 --- /dev/null +++ b/src/main/java/DAO/ReponseDAO.java @@ -0,0 +1,4 @@ +package DAO; + +public class ReponseDAO { +} diff --git a/src/main/java/DAO/SessionDAO.java b/src/main/java/DAO/SessionDAO.java new file mode 100644 index 0000000..21b2585 --- /dev/null +++ b/src/main/java/DAO/SessionDAO.java @@ -0,0 +1,4 @@ +package DAO; + +public class SessionDAO { +} diff --git a/src/main/java/DAO/Tous.java b/src/main/java/DAO/Tous.java new file mode 100644 index 0000000..36ec12b --- /dev/null +++ b/src/main/java/DAO/Tous.java @@ -0,0 +1,14 @@ +package DAO; + +import java.io.Serializable; +import java.util.List; + +public interface Tous { + T create(T t); + T update(T t); + T read(Id id); + void delete(T t); + List findAll(); + + T save(T t); +} diff --git a/src/main/java/DAO/TousDAOImpl.java b/src/main/java/DAO/TousDAOImpl.java new file mode 100644 index 0000000..6e691bf --- /dev/null +++ b/src/main/java/DAO/TousDAOImpl.java @@ -0,0 +1,31 @@ +package DAO; + +import jakarta.persistence.EntityManager; +import jakarta.persistence.EntityTransaction; +import jakarta.persistence.PersistenceException; +import jpa.EntityManagerHelper; + +import java.io.Serializable; + +public abstract class TousDAOImpl implements Tous { + protected EntityManager em; + private Class entityClass; + + public TousDAOImpl() { + this.em = EntityManagerHelper.getEntityManager(); + } + + @Override + public T save(T t) { + EntityTransaction tx = em.getTransaction(); + try { + tx.begin(); + em.persist(t); + tx.commit(); + return t; + } catch (PersistenceException e) { + throw new PersistenceException(e.getMessage()); + } + } +} + diff --git a/src/main/java/DAO/UtilisateurDAO.java b/src/main/java/DAO/UtilisateurDAO.java new file mode 100644 index 0000000..c05dcfc --- /dev/null +++ b/src/main/java/DAO/UtilisateurDAO.java @@ -0,0 +1,4 @@ +package DAO; + +public class UtilisateurDAO { +}