1.什么是事务?
事务是最小的工作单元,无论成功与否都作为整体工作.
事务是有多个任务构成,每个任务都成功完成后事务才能够成功完成.否则事务失败将返回事务开始的状态.
2.事务的特性ACID
1.atomic 原子性
2.cosistent一致性
3.Isolation孤立性
4.Durability持久性
3.事务JAVA SAMPLE
InitialContent ctx=new InitialContent();
UserTransaction tran=(UserTransaction )ctx.lookup("java.comp/UserTransaction");
//begin
tran.begin();
//transaction action
//end
tran.commit();
4.事务基本原理
afterBegin 事务处理刚刚开始
beforeCompletion 事务处理快要结束
afterCompletion(boolean) 事务处理已经结束.boolean 是指提交了还是撤销了.
5.事务管理器
2PC(2 phase commit 两段提交)是事务管理器和资源管理器的一个交互机制.
2pc的RDBMS必须支持XA-compliant.
PS: 通常JAVA在应用程序中使用driverManager建立连接Connection.但在J2EE中是使用DataSource来获得Connection 对象的.
J2EE还提供了PooledConnection(连接池),它是从ConnectionPoolDataSource获得的.XADataSource和XAConnection 与之相关的子接口.
6.JTA
API: javax.transaction
7.JTS
8.Hibernate的事务性
9.JBPM的事务性