Jak mohu získat org.hibernate.cfg.Configuration ve hře rámec 2 pomocí SPS plugin

hlasů
2

Můžu SPS Config takto:

Configuration jpaConf = Configuration.root().getConfig(jpa);

Ale jak mohu získat org.hibernate.cfg.Configuration které musím udělat Schema Exportovat jako v této otázce (základnu na rámce Play 1): Použití SchemaExport v rámci Play

My Play Framework 2.x application.conf má toto:

# Database configuration
# ~~~~~
db.default.driver=org.postgresql.Driver
db.default.url=jdbc:postgresql://localhost:5432/dpma
db.default.user=bp
db.default.jndiName=DefaultDS
jpa.default=defaultPersistenceUnit

můj persistence.xml vypadá takto:

<?xml version=1.0 encoding=UTF-8?>
<persistence version=2.0 xmlns=http://java.sun.com/xml/ns/persistence xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xsi:schemaLocation=http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd>
  <persistence-unit name=defaultPersistenceUnit transaction-type=RESOURCE_LOCAL>
    <non-jta-data-source>DefaultDS</non-jta-data-source>
    <properties>
            <property name=hibernate.dialect value=org.hibernate.dialect.PostgreSQL9Dialect/>
            <property name=hibernate.hbm2ddl.auto value=update/>
            <property name=hibernate.show_sql value=true/>
            <property name=hibernate.format_sql value=true/>
            <property name=hibernate.use_sql_comments value=true/>
            <!--<property name=hibernate.default_schema value=&quot;legalEntitiesTest&quot;/>-->
            <property name=hibernate.globally_quoted_identifiers value=false/>
        </properties>
  </persistence-unit>
</persistence>

** Pro ty, kteří nejsou obeznámeni s rámcem Play: ** https://playframework.com/documentation/2.2.4/JavaJPA

Položena 16/09/2014 v 13:48
uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
2

Můžete vytvořit konfigurační hibernace objekt sám, pomocí konfiguračního souboru hibernace:

Configuration c = new Configuration();
c.configure("path to hibernate config").getProperty("hibernate property");

Pokud nechcete používat hibernace cfg souboru, můžete místo toho přidat Smíšeného parlamentního shromáždění entit do konfigurace tímto způsobem ( to assums všechny vaše SPS třídy patří do jednoho balení ):

final Configuration configuration = new Configuration();
final Reflections reflections = new Reflections(EntityClass.class.getPackage().getName());
final Set<Class<?>> classes = reflections.getTypesAnnotatedWith(Entity.class);
for (final Class<?> clazz : classes) {
    configuration.addAnnotatedClass(clazz);
}

Před provedením exportu schématu, nezapomeňte nastavit dialektem:

configuration.setProperty("hibernate.dialect", "org.hibernate.dialect.PostgreSQL9Dialect");
Odpovězeno 15/10/2014 v 09:53
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more