Spring提供了TransactionProxyFactoryBean作为动态代理的生成工厂,该工厂产生目标bean的动态AOP事务代理。事务代理根据所配置的事务属性自动管理事务操作。该事务代理对事务的透明管理依赖于一个在ApplicationContext范围全局可见的PlatformTransactionManager。Spring提供两个默认的事务管理器实现:DataSourceTransactionManager和JtaTransactionManager。前者只能支持单个jdbc数据源,后者可以支持多个数据源,可以做分布式事务管理。一般由容器提供支持JTA的事务管理器实现,Spring的JtaTransactionManager会自动通过JNDI检测TransactionManager或UserTransaction的存在,也可以在配置中指定JNDI的设置。如果想不依赖于容器实现分布式事务管理,可以采用开源的事务管理器实现JOTM。事务管理器必须要知道被管理的DataSource的位置,如果是DataSourceTransactionManager,在事务管理器配置中直接指定JDBC数据源的引用,如果是JtaTransactionManager,容器负责告知事务管理器需要管理的数据源。不管是哪一种情况,都需要在Dao中配置与事务管理器相对应的数据源。 |
Spring的事务处理机制
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Spring事件处理机制的认识
Spring事件处理机制的认识
事件监听器 Spring -
Spring中的事务处理机制
# 【1】事务管理事务管理是企业级应用程序开发中必不可少的技术, 用来确保数据的完整性和一致性业务规则的一致性状态中。* 隔
Spring事务 事务管理 spring 回滚