Using reflection for Hibernate classes.

master
Markus Kreth 7 years ago
parent 8807595b1a
commit b18db77e4d
  1. 6
      pom.xml
  2. 1
      src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/data/Persongroup.java
  3. 45
      src/test/java/de/kreth/vaadin/clubhelper/AbstractHibernateConfiguration.java

@ -169,6 +169,12 @@
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.reflections</groupId>
<artifactId>reflections</artifactId>
<version>0.9.11</version>
</dependency>
<dependency>
<groupId>simple-jndi</groupId>
<artifactId>simple-jndi</artifactId>

@ -10,7 +10,6 @@ import javax.persistence.ManyToOne;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
/**
* The persistent class for the persongroup database table.
*

@ -1,41 +1,32 @@
package de.kreth.vaadin.clubhelper;
import java.util.HashSet;
import java.util.Set;
import org.hibernate.cfg.Configuration;
import org.reflections.Reflections;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Adress;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Altersgruppe;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Attendance;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.BaseEntity;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.ClubeventHasPerson;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Contact;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.DeletedEntry;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.GroupDef;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Person;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Persongroup;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Pflicht;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Relative;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Startpass;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.StartpassStartrechte;
import de.kreth.vaadin.clubhelper.vaadinclubhelper.data.Version;
public abstract class AbstractHibernateConfiguration implements HibernateConfiguration {
private Set<Class<?>> entityClasses;
public AbstractHibernateConfiguration() {
Reflections reflections = new Reflections("de.kreth.vaadin.clubhelper.vaadinclubhelper.data");
entityClasses = new HashSet<>(reflections.getSubTypesOf(BaseEntity.class));
entityClasses.add(ClubeventHasPerson.class);
}
@Override
public void configure(Configuration configuration) {
configuration.addAnnotatedClass(Adress.class);
configuration.addAnnotatedClass(Altersgruppe.class);
configuration.addAnnotatedClass(Attendance.class);
configuration.addAnnotatedClass(Contact.class);
configuration.addAnnotatedClass(DeletedEntry.class);
configuration.addAnnotatedClass(GroupDef.class);
configuration.addAnnotatedClass(Person.class);
configuration.addAnnotatedClass(Persongroup.class);
configuration.addAnnotatedClass(Pflicht.class);
configuration.addAnnotatedClass(Relative.class);
configuration.addAnnotatedClass(Startpass.class);
configuration.addAnnotatedClass(StartpassStartrechte.class);
configuration.addAnnotatedClass(Version.class);
for (Class<?> entityClass : entityClasses) {
configuration.addAnnotatedClass(entityClass);
}
configuration.addInputStream(getClass().getResourceAsStream("/schema/ClubEvent.hbm.xml"));
configuration.addAnnotatedClass(ClubeventHasPerson.class);
configuration.setProperty("hibernate.hbm2ddl.auto", "update");
configuration.setProperty("spring.jpa.hibernate.ddl-auto", "update");

Loading…
Cancel
Save