最简单的办法是直接使用不同的配置文件,但会出现大量的重复.实际上不相同的部分只有一小部份.
因此,可以将相同的部份放在一个文件中,把不同的部分放到不同的文件中.Datasource部分比较简单,直接拆开放出来就可以了.但hibernate.dialect属性的配置就要麻烦一点,需要用属性来控制,而属性的定义会放在不同的文件中.
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
...
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">${hibernate.dialect}</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
appContext-test.xml
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="properties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.HSQLDialect
</prop>
</props>
</property>
</bean>
appContext-dist.xml
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="properties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
</props>
</property>
</bean>
因此,可以将相同的部份放在一个文件中,把不同的部分放到不同的文件中.Datasource部分比较简单,直接拆开放出来就可以了.但hibernate.dialect属性的配置就要麻烦一点,需要用属性来控制,而属性的定义会放在不同的文件中.
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
...
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">${hibernate.dialect}</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
appContext-test.xml
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="properties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.HSQLDialect
</prop>
</props>
</property>
</bean>
appContext-dist.xml
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="properties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
</props>
</property>
</bean>
Spring与Hibernate配置文件拆分方法
博客介绍了Spring和Hibernate配置文件的处理方法。为避免大量重复,可将相同部分放一个文件,不同部分放不同文件。Datasource部分可直接拆分,hibernate.dialect属性配置较麻烦,需用属性控制,属性定义放在不同文件,并给出了相关配置示例。

3724

被折叠的 条评论
为什么被折叠?



