<?xml version="1.0" encoding="gb2312"?>

<!-- RSS generated by oioj.net on 4/16/2004 ; 感谢LeXRus提供 RSS 2.0 文档; 此文件可自由使用，但请保留此行信息 --> 
<!-- Source download URL: http://blogger.org.cn/blog/rss2.asp       -->
<rss version="2.0">

<channel>
<title>java设计与架构</title>
<link>http://blogger.org.cn/blog/blog.asp?name=luckyxb</link>
<description>淡淡的咖啡的博客</description>
<copyright>blogger.org.cn</copyright>
<generator>W3CHINA Blog</generator>
<webMaster>webmaster@blogger.org.cn</webMaster>
<item>
<title><![CDATA[Spring的事务处理机制]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=luckyxb&amp;id=6792</link>
<author>luckyxb</author>
<pubDate>2005/6/25 0:07:10</pubDate>
<description><![CDATA[
<P>Spring提供了<FONT color=#ff0033>TransactionProxyFactoryBean</FONT>作为动态代理的生成工厂，该工厂产生目标bean的动态AOP事务代理。事务代理根据所配置的事务属性自动管理事务操作。该事务代理对事务的透明管理依赖于一个在ApplicationContext范围全局可见的<FONT color=#f70938>PlatformTransactionManager</FONT>。Spring提供两个默认的事务管理器实现：<FONT color=#f70938>DataSourceTransactionManager</FONT>和<FONT color=#f70938>JtaTransactionManager</FONT>。前者只能支持<STRONG>单个</STRONG>jdbc数据源，后者可以支持<STRONG>多个</STRONG>数据源，可以做<STRONG>分布式事务管理</STRONG>。一般由容器提供支持JTA的事务管理器实现，Spring的JtaTransactionManager会自动通过JNDI检测TransactionManager或UserTransaction的存在，也可以在配置中指定JNDI的设置。如果想不依赖于容器实现分布式事务管理，可以采用开源的事务管理器实现<FONT color=#ff0066>JOTM</FONT>。事务管理器必须要知道被管理的DataSource的位置，如果是<FONT color=#f70938>DataSourceTransactionManager，</FONT>在<FONT color=#000000>事务管理器配置中直接指定JDBC数据源的引用，如果是<FONT color=#f70938>JtaTransactionManager</FONT>，容器负责告知事务管理器需要管理的数据源。不管是哪一种情况，都需要在Dao中配置与事务管理器相对应的数据源。</FONT></P>
<P>&nbsp;</P>]]></description>
</item>
</channel>
</rss>