#什么是JTA
JTA是Java的API,是个处理事务的。
事务必须保证用户操作的原子性,一致性,隔离性,持久性。
事务处理方式有两个,一个是本地事务还有一个是分布式事务
#本地事务
首先本地事务只于资源管理器相结合。局限性很大。
Connection conn = null;
statement stat = null;
try{
conn = getDataSource().getConnection();
conn.setAutoCommit(true);
stat = conn.createStatement();
stat.execute("SQL语句");
conn.comit();
}catch(SQLException sqle){
try{
conn.rollback();
stat.close();
conn.close();
}catch(Exception ignore)
}
#分布式事务
JTA与JSF共同为分布式提供事务处理。
首先分布式事务,由事务管理器,资源管理器(遵循XA协议)还有应用程序组成。首先应用程序发送事务请求,事务管理器收到后询问资源管理器
是否准备就绪。然后返回给应用程序准备就绪,然后应用程序开始事务。
获取Transaction管理对象
连接数据库,启动事务
提交事务,当发生异常进行回滚
JTA分布式事务接口,JTS是JTA的一种实现。spring事务里面,可以使用JTA等事务。感觉挺厉害的,可选择性高。
转载于:https://blog.51cto.com/14017938/2384016