java db 查询优化-抉择数据库事务支持
java db 查询优化---选择数据库事务支持
通过跟踪数据库连接的使用,发现很多查询没必要要求事务,只要支持事务即可,这样,查询速度快多了。
一方面是和服务器交互次数少了,不必调用setautocommit(true),commit等方法,另一方面,在非事务环境下,查询要快很多,消耗也少。
只要把事务设置成PROPAGATION_SUPPORTS,即可。
<bean id="baseTxService" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
<property name="transactionManager" ref="transactionManager" />
<property name="proxyTargetClass" value="false" />
<property name="transactionAttributes">
<props>
<prop key="find*">PROPAGATION_SUPPORTS,readOnly</prop>
<prop key="query*">PROPAGATION_SUPPORTS,readOnly</prop>
<prop key="*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>