我如何让Spring从中加载Hibernate的属性hibernate.cfg.xml?
hibernate.cfg.xml
我们正在使用Spring和JPA(以Hibernate作为实现)。Spring applicationContext.xml指定了JPA语言和Hibernate属性:
applicationContext.xml
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean"> <property name="jpaDialect"> <bean class="org.springframework.orm.jpa.vendor.HibernateJpaDialect" /> </property> <property name="jpaProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</prop> </props> </property> </bean>
在这种配置中,Spring通过applicationContext.xml读取所有的Hibernate属性。当我创建一个hibernate.cfg.xml(位于我的类路径的根目录,与META- INF处于同一级别)时,Hibernate根本不会读取它(它被完全忽略了)。
我正在尝试通过在hibernate.cfg.xml以下位置插入缓存属性来配置Hibernate二级缓存:
<cache usage="transactional|read-write|nonstrict-read-write|read-only" region="RegionName" include="all|non-lazy" />
试试这样的东西…
<bean id="mySessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocation"> <value> classpath:location_of_config_file/hibernate.cfg.xml </value> </property> <property name="hibernateProperties"> <props> ... </props> </property> </bean>