1

Я использую фасет проекта spring-data и jpa в sts для генерации объектов непосредственно из моей схемы базы данных. Какова наилучшая практика управления перемещением «аннотированных» объектов между разными средами (dev, staging, prod ..etc).Перемещение аннотированных объектов jpa между средами

данный объект

@Entity 
@Table(name="DevEnvironment.dbo.mytable") 
public class MyTable implements Serializable {} 

Как мигрировать (только производить Maven артефакты целенаправленные к конкретной среде) указанной организации в

@Entity 
@Table(name="ProdEnvironment.dbo.mytable") 
public class MyTable implements Serializable {} 

возможно с помощью Spel?

среда весна-данных JPA, spring3.1.0, osojvHibernateJpaVendorAdapter

заранее спасибо

+0

из [_here_] (http://stackoverflow.com/questions/2737420/how-to-set-up-default-schema-name-in-jpa-configuration) Я выяснил свойство установить имя схемы независимо аннотаций. – sunny

+0

ok Я считаю, что у меня это работает, установив свойство hibernate.default_schema для jpaproperties при настройке entitymnanagerfactory с весны – sunny

ответ

0

Хотя я не получил окончательный 'рекомендуется' ответить Это отлично работает для меня

<!-- entity manager --> 
<bean id="entityManagerFactory" 
    class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> 
    <property name="dataSource" ref="myDataSource" /> 
    <property name="jpaVendorAdapter" ref="jpaAdapter" /> 
    <property name="persistenceUnitName" value="mypu" /> 
    <property name="jpaProperties"> 
     <props> 
      <prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop> 
      <prop key="hibernate.default_schema">${default_schema}</prop> 
     </props> 
    </property> 
</bean>