diff --git a/hibernate-project/src/main/java/com/humanbooster/App.java b/hibernate-project/src/main/java/com/humanbooster/App.java index c4d3247..3c76ebf 100644 --- a/hibernate-project/src/main/java/com/humanbooster/App.java +++ b/hibernate-project/src/main/java/com/humanbooster/App.java @@ -18,7 +18,11 @@ import org.hibernate.SessionFactory; import java.util.List; public class App { + + public static final boolean LOCAL_ENVIRONMENT = true; + public static void main(String[] args) { + System.out.println("Démarrage de l'application"); RestClient client = new RestClient(); @@ -30,7 +34,7 @@ public class App { System.out.println("Erreur lors du démarrage du serveur : " + e.getMessage()); } - SessionFactory sessionFactory = new HibernateConfig(true).getSessionFactory(); + SessionFactory sessionFactory = new HibernateConfig().getSessionFactory(); UserService userService = new UserService(new UserDao(sessionFactory)); ArticleService articleService = new ArticleService(new ArticleDao(sessionFactory)); diff --git a/hibernate-project/src/main/java/com/humanbooster/config/HibernateConfig.java b/hibernate-project/src/main/java/com/humanbooster/config/HibernateConfig.java index 17fe9d1..c7e6919 100644 --- a/hibernate-project/src/main/java/com/humanbooster/config/HibernateConfig.java +++ b/hibernate-project/src/main/java/com/humanbooster/config/HibernateConfig.java @@ -1,5 +1,6 @@ package com.humanbooster.config; +import com.humanbooster.App; import org.hibernate.SessionFactory; import org.hibernate.boot.Metadata; import org.hibernate.boot.MetadataSources; @@ -12,17 +13,11 @@ import jakarta.persistence.Entity; public class HibernateConfig { - private final boolean isLocalEnvironment; - - public HibernateConfig(boolean isLocalEnvironment) { - this.isLocalEnvironment = isLocalEnvironment; - } - public SessionFactory getSessionFactory() { SessionFactory sessionFactory; - if (isLocalEnvironment) { + if (App.LOCAL_ENVIRONMENT) { Configuration config = new Configuration() .setProperty("hibernate.connection.url", "jdbc:mysql://127.0.0.1:3306/testdb") diff --git a/hibernate-project/src/main/java/com/humanbooster/controller/ArticleController.java b/hibernate-project/src/main/java/com/humanbooster/controller/ArticleController.java index 9cf0e42..2dcc967 100644 --- a/hibernate-project/src/main/java/com/humanbooster/controller/ArticleController.java +++ b/hibernate-project/src/main/java/com/humanbooster/controller/ArticleController.java @@ -1,5 +1,7 @@ package com.humanbooster.controller; +import com.humanbooster.config.HibernateConfig; +import com.humanbooster.dao.ArticleDao; import com.humanbooster.dao.GenericDao; import com.humanbooster.model.Article; import jakarta.ws.rs.Path; @@ -8,7 +10,11 @@ import org.hibernate.SessionFactory; @Path("/articles") public class ArticleController extends GenericControllerImpl { + public ArticleController() { + this(new HibernateConfig().getSessionFactory(), new ArticleDao(new HibernateConfig().getSessionFactory())); + } + public ArticleController(SessionFactory sessionFactory, GenericDao dao) { - super(sessionFactory,dao); + super(sessionFactory, dao); } } diff --git a/hibernate-project/src/main/java/com/humanbooster/controller/GenericControllerImpl.java b/hibernate-project/src/main/java/com/humanbooster/controller/GenericControllerImpl.java index c223c77..0f90ea4 100644 --- a/hibernate-project/src/main/java/com/humanbooster/controller/GenericControllerImpl.java +++ b/hibernate-project/src/main/java/com/humanbooster/controller/GenericControllerImpl.java @@ -1,5 +1,6 @@ package com.humanbooster.controller; +import com.humanbooster.config.HibernateConfig; import com.humanbooster.dao.GenericDao; import jakarta.ws.rs.*; import jakarta.ws.rs.core.MediaType; @@ -9,7 +10,7 @@ import java.util.List; @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) -public abstract class GenericControllerImpl implements GenericController, GenericDao { +public abstract class GenericControllerImpl implements GenericController, GenericDao { protected final SessionFactory sessionFactory; private final GenericDao dao; diff --git a/hibernate-project/src/main/java/com/humanbooster/controller/UserController.java b/hibernate-project/src/main/java/com/humanbooster/controller/UserController.java index 4d59ad0..90128ed 100644 --- a/hibernate-project/src/main/java/com/humanbooster/controller/UserController.java +++ b/hibernate-project/src/main/java/com/humanbooster/controller/UserController.java @@ -1,10 +1,8 @@ package com.humanbooster.controller; import com.humanbooster.config.HibernateConfig; -import com.humanbooster.dao.GenericDao; import com.humanbooster.dao.UserDao; import com.humanbooster.model.User; -import jakarta.inject.Inject; import jakarta.ws.rs.*; import jakarta.ws.rs.core.MediaType; import org.hibernate.SessionFactory; @@ -16,7 +14,7 @@ import org.hibernate.SessionFactory; public class UserController extends GenericControllerImpl { public UserController() { - this(HibernateConfig.getSessionFactory(), new UserDao(HibernateConfig.getSessionFactory())); + this(new HibernateConfig().getSessionFactory(), new UserDao(new HibernateConfig().getSessionFactory())); } public UserController(SessionFactory sessionFactory, UserDao userDao) {