Java LocalSessionFactoryBean.hibernateProperties.hibernate.c3p0.timeout和HibernateTransactionManager.defaultTimeout之间的差异
在我们的项目代码中,我们通过xml初始化slave DB Spring HibernateTransactionManager,如下所示:Java LocalSessionFactoryBean.hibernateProperties.hibernate.c3p0.timeout和HibernateTransactionManager.defaultTimeout之间的差异,java,spring,hibernate,Java,Spring,Hibernate,在我们的项目代码中,我们通过xml初始化slave DB Spring HibernateTransactionManager,如下所示: <bean id="slaveSessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <property name="hibernateProperties"> &l
<bean id="slaveSessionFactory"
class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">com.swiggy.delivery.deliveryboy.model.dao.CustomMySql5Dialect</prop>
<prop key="hibernate.show_sql">${hibernate.slave.showSql}</prop>
<prop key="hibernate.format_sql">${hibernate.slave.formatSql}</prop>
<prop key="hibernate.connection.url">${hibernate.slave.connection.url}</prop>
<prop key="hibernate.connection.driver_class">com.mysql.jdbc.ReplicationDriver</prop>
<prop key="hibernate.connection.username">${hibernate.slave.connection.username}</prop>
<prop key="hibernate.connection.password">${hibernate.slave.connection.password}</prop>
<prop key="hibernate.c3p0.min_size">${hibernate.slave.c3p0.min_size}</prop>
<prop key="hibernate.c3p0.max_size">${hibernate.slave.c3p0.max_size}</prop>
<prop key="hibernate.c3p0.timeout">300</prop>
<prop key="hibernate.c3p0.max_statements">0</prop>
<prop key="hibernate.c3p0.idle_test_period">3000</prop>
<prop key="hibernate.c3p0.max_idle_time_excess_connections">60</prop>
</props>
</property>
</bean>
<bean id="slaveTransactionManager"
class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="slaveSessionFactory" />
<property name="defaultTimeout" value="10" />
</bean>
com.swiggy.delivery.deliveryboy.model.dao.CustomMySQL5方言
${hibernate.slave.showSql}
${hibernate.slave.formatSql}
${hibernate.slave.connection.url}
com.mysql.jdbc.ReplicationDriver
${hibernate.slave.connection.username}
${hibernate.slave.connection.password}
${hibernate.slave.c3p0.min_size}
${hibernate.slave.c3p0.max_size}
300
0
3000
60
这里,我想了解对于DB读取超时,事务期间将使用哪个值,300 ms的hibernate.c3p0.timeout
值或10 ms的defaultTimeout
值
为此,我尝试查看Spring和Hibernate文档,但无法得到关于defaultTImeout是否会覆盖Hibernate.c3p0.timeout的明确答案
我的直觉是选择的超时值是300毫秒,但无法确认