在ssh框架中老是看到spring的配置文件中写有以下的一些代码:
<!--该bean定义了spring所提供的hibernate3的事务管理-->
<bean id=""transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
<!--该bean 定义了事务管理代理,该bean采用了spring的AOP-->
<bean id="userDAOProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean>
<property name="transactionManager">
<ref bean="transactionManager"/>
</property>
<property name="targer">
<list>
<ref local="userdao"/>
<ref local="regdao"/>
</list>
</property>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
...
</props>
</property>
</bean>
<!--该bean定义了spring的HibernateTemplate-->
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
请问,这里所谓的事务管理,事务代理具体的工作流程是怎样的?这些bean相互之间又是如何相互协作来完成任务的?感觉对配置文件里的这些代码理解的很模糊,请高手赐教!
<!--该bean定义了spring所提供的hibernate3的事务管理-->
<bean id=""transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
<!--该bean 定义了事务管理代理,该bean采用了spring的AOP-->
<bean id="userDAOProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean>
<property name="transactionManager">
<ref bean="transactionManager"/>
</property>
<property name="targer">
<list>
<ref local="userdao"/>
<ref local="regdao"/>
</list>
</property>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
...
</props>
</property>
</bean>
<!--该bean定义了spring的HibernateTemplate-->
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
请问,这里所谓的事务管理,事务代理具体的工作流程是怎样的?这些bean相互之间又是如何相互协作来完成任务的?感觉对配置文件里的这些代码理解的很模糊,请高手赐教!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货