JDBC事务,一般由数据库本身来执行或回滚操作(单阶段提交)。所有数据库都有他自己的事务管理器,管理执行的日志,这些管理器只能处理其自身的事务(称为本地事务)。
而JTA 则不同,JTA需支持多个数据源,站在更高的角度上,提供一个“事务处理监视器”来管理和协调这些数据源之间的事务操作。它必须执行两阶段提交(2pc)协议
准备阶段   TPM向所有RM(资源管理器,即数据库)确认状态,是否可以提交或回滚
提交阶段   TPM确认调教之后,向所有RM发出提交指令(或回滚)
TPM本身会维护事务日志,以保证持久性(灾难恢复等)