package mutilDataSource;
import java.sql.Connection;
import java.sql.Statement;
import javax.naming.InitialContext;
import javax.sql.XAConnection;
import javax.sql.XADataSource;
import javax.transaction.xa.XAException;
import javax.transaction.xa.XAResource;
import javax.transaction.xa.Xid;
//在使用JTA之前,你必须首先实现一个Xid类用来标识事务(在普通情况下这将由事务管理程序来处理)
public class MyXid implements Xid {
// formatID通常是零,这意味着你将使用OSI CCR(Open Systems Interconnection Commitment,
// Concurrency和Recovery 标准)来命名。如果你要是用另外一种格式,那么formatID应该大于零。-1值意味着Xid为无效。
protected int formatId;
// gtrid和bqual可以包含64个字节二进制码来分别标识全局事务和分支事务。唯一的要求是gtrid和bqual必须是全局唯一的。此外,这可以通过使用指定在OSI
// CCR中的命名规则规范来完成。
protected byte gtrid[];// 全局事务标识符
protected byte bqual[];// 分支修饰词标识符
public MyXid() {
}
public MyXid(int formatId, byte gtrid[], byte bqual[]) {
this.formatId = formatId;
this.gtrid = gtrid;
this.bqual = bqual;
}
public byte[] getBranchQualifier() {
// TODO Auto-generated method stub
return bqual;
}
public int getFormatId() {
// TODO Auto-generated method stub
return formatId;
}
public byte[] getGlobalTransactionId() {
// TODO Auto-generated method stub
return gtrid;
}
public XADataSource getXADataSource() throws Exception {
InitialContext ctx = new InitialContext();
XADataSource ds = (XADataSource) ctx.lookup("jdbc/xaDS");
return ds;
}
public void test() throws Exception {
XADataSource xaDS;
XAConnection xaCon;
XAResource xaRes;
Xid xid;
Connection con;
Statement stmt;
int ret;
xaDS = getXADataSource();
xaCon = xaDS.getXAConnection();
xaRes = xaCon.getXAResource();
con = xaCon.getConnection();
stmt = con.createStatement();
xid = new MyXid(100, new byte[] { 0x01 }, new byte[] { 0x02 });
try {
xaRes.start(xid, XAResource.TMNOFLAGS);
stmt.executeUpdate("insert into test_table values (100)");
xaRes.end(xid, XAResource.TMSUCCESS);
ret = xaRes.prepare(xid);
if (ret == XAResource.XA_OK) {
xaRes.commit(xid, false);
}
} catch (XAException e) {
e.printStackTrace();
} finally {
stmt.close();
con.close();
xaCon.close();
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
mulitiDataSourceTest1.rar (79个子文件)
mulitiDataSourceTest1
.mystrutsdata 262B
tmlog7.log 2KB
.springBeans 479B
.myhibernatedata 481B
.settings
com.genuitec.eclipse.j2eedt.core.prefs 1KB
org.eclipse.core.resources.prefs 145B
org.eclipse.jdt.core.prefs 629B
src
server-config.properties 318B
mutilDataSource
model
Users.java 503B
Product.java 496B
Product.hbm.xml 617B
Uses.hbm.xml 601B
jtatest
dao
ProductDao.java 157B
UserDao.java 154B
test.java 1KB
biz
Biz.java 185B
daoimpl
UserDaoimpl.java 371B
ProductDaoimpl.java 373B
bizimpl
Bizimpl.java 660B
MyXid.java 2KB
ehcache.xml 667B
util
SetCharacterEncodingFilter.java 1KB
.project 2KB
WebRoot
css
common.css 232B
image
add.gif 994B
delete.gif 989B
user_edit.png 833B
META-INF
MANIFEST.MF 39B
WEB-INF
.Copy of struts-config.mex 1KB
logs
web.xml 2KB
view
workflow
index.jsp 835B
security
dept.jsp 2KB
resource.jsp 2KB
index.jsp 1KB
user.jsp 2KB
role.jsp 2KB
common.jsp 499B
log4j.properties 801B
.struts-config.mex 6KB
classes
server-config.properties 318B
mutilDataSource
model
Product.class 880B
Product.hbm.xml 617B
Users.class 806B
Uses.hbm.xml 601B
MyXid.class 3KB
jtatest
dao
UserDao.class 173B
ProductDao.class 181B
biz
Biz.class 196B
test.class 1KB
daoimpl
ProductDaoimpl.class 790B
UserDaoimpl.class 774B
bizimpl
Bizimpl.class 1KB
ehcache.xml 667B
util
SetCharacterEncodingFilter.class 2KB
struts-config.xml 754B
lib
transactions-jdbc-3.6.4.jar 36KB
ehcache-1.5.0.jar 258KB
spring.jar 2.43MB
transactions-hibernate3-3.6.4.jar 5KB
transactions-3.6.4.jar 152KB
ojdbc14.jar 1.47MB
transactions-jta-3.6.4.jar 110KB
json.jar 38KB
transactions-jdbc-deprecated-3.6.4.jar 48KB
transactions-jms-3.6.4.jar 57KB
atomikos-util-3.6.4.jar 89KB
acegi-security-1.0.7.jar 536KB
transactions-jms-deprecated-3.6.4.jar 58KB
transactions-api-3.6.4.jar 27KB
spring.tld 13KB
spring-form.tld 71KB
applicationContext.xml 7KB
view
login.jsp 1KB
securedpage.jsp 771B
index.jsp 938B
scripts
.mymetadata 337B
.classpath 3KB
.myeclipse
192.168.1.72.tm7.epoch 8B
tm.out 888KB
共 79 条
- 1
资源评论
- xiuheng2k92017-01-09不是很理想的实例,供学习使用吧,还是非常感谢
- wcr20132014-09-17学习下 分布式事务相关资料不好找
- mengwenjun9872020-09-11主要是用来学习的
- buptfrh2013-07-03学习下 分布式事务相关资料不好找
wynking1985
- 粉丝: 1
- 资源: 15
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功