私のプロジェクトではspring + hibernate + oracleを使用しています。セッションファクトリオブジェクトとしてLocalSessionFactoryBeanを持っていて、別のhbm.xmlファイルをプロジェクトにマップしました。Springで休止状態マッピングファイルにスキーマ名を動的に追加
私の構成は以下の通りです:
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="mappingResources">
<list>
<value>one.hbm.xml</value>
<value>two.hbm.xml</value>
<value>three.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">....</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.connection.release_mode">after_transaction</prop>
<prop key="hibernate.transaction.auto_close_session">true</prop>
<prop key="hibernate.hbm2ddl.auto">none</prop>
</props>
</property>
</bean>
は今、私は3つのマッピングファイルがあり、それぞれが異なるスキーマを参照してください。だから、スキーマ名をマップするために、私は次のように各マッピングファイルに名前を提供することができます。
<hibernate-mapping schema="one">
しかし、問題は、私は別の環境に基づいて、異なるスキーマ名を持っています。だから私はそれをプログラム的に構成することができます。
状況は、私は1つのセッションの工場とデータ・ソースのみを持っていると私はそれから他のスキーマのプライマリおよびアクセス表などのスキーマを持っています主スキーマ。 – Chintan
あなたのケースではどのデータベースを使用していますか? – globetrotter
私はoracleデータベース – Chintan