spring project を含む実行可能な Jar があります。コードに変数を提供するプロパティ ファイルがあり、jar と同じディレクトリに存在します。すべてが正常に機能しています。Java コードでは、プロパティ ファイルを次のようにロードします。
Properties properties = new Properties();
properties.load(new FileInputStream(PROPERTY_FILE_NAME));
applicationContext.xml の私のデータソースは
<bean id="teDataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/testDB"/>
<property name="username" value="t"/>
<property name="password" value="t"/>
<property name="initialSize" value="5"/>
<property name="maxActive" value="10"/>
</bean>
休止状態のプロパティは次のとおりです。
<bean id="hibernateProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="properties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<!-- <prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop> -->
<prop key="hibernate.jdbc.fetch_size">250</prop>....
上記のすべてはMySqlまたはOracleの両方で機能し、方言を変更すると(下のコメント付きのpropキー)、切り替えが行われます。しかし、プロパティ ファイルのプロパティに基づいてデータベースを選択できるようにしたいと考えています。私のシナリオでは、どうすればこれを達成できますか?
バージョン:
spring - 3.0.5.RELEASE
hibernate - 3.3.2.GA