diff --git a/pom.xml b/pom.xml index 8bcb8c954a11bb6a25f82f98f6f2c7d1cd09dadd..07dc1cd28d4399b5b05ff567921ae9e74e022c82 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ org.hibernate hibernate-entitymanager - 4.1.8.Final + 5.2.3.Final @@ -38,7 +38,7 @@ org.hibernate hibernate-validator - 5.0.1.Final + 5.2.3.Final javax.el diff --git a/src/main/resources/META-INF/persistence.xml b/src/main/resources/META-INF/persistence.xml index febc7c632c8a007312fd293c1b9e2d0842c5708a..f00d5a139a193411b2cb1bd2d22a2619cd950ea1 100644 --- a/src/main/resources/META-INF/persistence.xml +++ b/src/main/resources/META-INF/persistence.xml @@ -3,10 +3,6 @@ xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd" version="2.0"> - dgpena.siexample.persistence.Department - dgpena.siexample.persistence.Employee - dgpena.siexample.persistence.Project - dgpena.siexample.persistence.ProjectAssignment diff --git a/src/test/java/dgpena/siexample/persistence/DepartmentsTest.java b/src/test/java/dgpena/siexample/persistence/DepartmentsTest.java index d9d411a7e868898fba4284369c8b4d1df5e90566..fc2a628f68c9091c8ab0b8514aebe34a25ccfd24 100644 --- a/src/test/java/dgpena/siexample/persistence/DepartmentsTest.java +++ b/src/test/java/dgpena/siexample/persistence/DepartmentsTest.java @@ -15,19 +15,12 @@ import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence; +import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; public class DepartmentsTest extends SQLBasedTest { - private static EntityManagerFactory emf; - - @BeforeClass - public static void setUpEntityManagerFactory() { - emf = Persistence.createEntityManagerFactory("si-database"); - } - - @Test public void testAddNewDepartment() throws Exception { diff --git a/src/test/java/dgpena/siexample/persistence/EmployeesTest.java b/src/test/java/dgpena/siexample/persistence/EmployeesTest.java index 3256abd6656d617cabaf4c7db931001bf60a1383..a1a5d317f91ff224552727912f313f1e6d7d8193 100644 --- a/src/test/java/dgpena/siexample/persistence/EmployeesTest.java +++ b/src/test/java/dgpena/siexample/persistence/EmployeesTest.java @@ -10,18 +10,12 @@ import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence; +import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; public class EmployeesTest extends SQLBasedTest { -private static EntityManagerFactory emf; - - @BeforeClass - public static void setUpEntityManagerFactory() { - emf = Persistence.createEntityManagerFactory("si-database"); - } - @Test public void testAddNewEmployee() throws SQLException { // insert a department previously with JDBC diff --git a/src/test/java/dgpena/siexample/persistence/SQLBasedTest.java b/src/test/java/dgpena/siexample/persistence/SQLBasedTest.java index a23b4000fc16df81caad14843d39b0aac0bd99c0..537a55b9b96319398b027091adfb6235094fcda0 100644 --- a/src/test/java/dgpena/siexample/persistence/SQLBasedTest.java +++ b/src/test/java/dgpena/siexample/persistence/SQLBasedTest.java @@ -6,13 +6,20 @@ import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; +import javax.persistence.EntityManagerFactory; +import javax.persistence.Persistence; + +import org.junit.AfterClass; +import org.junit.BeforeClass; + public class SQLBasedTest { private static final String DB_URL = "jdbc:mysql://localhost:3306/si"; private static final String DB_USER = "siuser"; private static final String DB_PASS = "sipass"; protected static Connection jdbcConnection = createConnection(); - + + private static Connection createConnection() { try { Class.forName("com.mysql.jdbc.Driver"); @@ -29,4 +36,20 @@ public class SQLBasedTest { return rs.getInt(1); } + + // EntityManagerFactory management + protected static EntityManagerFactory emf; + + @BeforeClass + public static void setUpEntityManagerFactory() { + emf = Persistence.createEntityManagerFactory("si-database"); + } + + @AfterClass + public static void closeEntityManagerFactory() throws SQLException { + if (emf != null && emf.isOpen()) { + emf.close(); + } + } + } diff --git a/src/test/resources/META-INF/persistence.xml b/src/test/resources/META-INF/persistence.xml index 5f876e7882113e94dd6362eb611c1fc561bcc6a2..f00d5a139a193411b2cb1bd2d22a2619cd950ea1 100644 --- a/src/test/resources/META-INF/persistence.xml +++ b/src/test/resources/META-INF/persistence.xml @@ -3,11 +3,6 @@ xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd" version="2.0"> - dgpena.siexample.persistence.Department - dgpena.siexample.persistence.Employee - dgpena.siexample.persistence.Project - dgpena.siexample.persistence.ProjectAssignment -