单元测试呀同志哥- -| 回首页 | 2004年索引 | - -试试XP吧

JOTM初接触- -

                                      

创建一个Jotm对象,用这个对象就可以创建UserTransaction和TransactionManager。然后把UserTransaction加到JNDI树上,于是所有应用程序都可以访问到同一个事务。
 
  Jotm jotm = new Jotm(true, false);
  InitialContext ictx = new InitialContext();
  ictx.rebind(USER_TRANSACTION_JNDI_NAME, jotm.getUserTransaction());
 

数据源要用XADataSource,这是可以用外接事务管理器来管理分布式事务的数据源对象。把JOTM的事务管理器接上去:
 
  StandardXADataSource xads = new StandardXADataSource();
  xads.setDriverName(props.getProperty("driver"));
  xads.setUrl(props.getProperty("url"));
  xads.setTransactionManager(jotm.getTransactionManager());
  XAConnection xaconn = xads.getXAConnection(login, password);
  return xaconn.getConnection();

需要用事务管理的客户代码就从JNDI树上取到UserTransaction来用,还是满简单的:
 
UserTransaction utc = (UserTransaction)ictx.lookup(USER_TRANSACTION_JNDI_NAME);
utc.begin();
...
utc.commit();
 
写了一天文档,差点被郁闷死。什么TMD可行性分析报告,纯粹扯淡蒙事。还是写写程序比较舒服。

- 作者: gigix 2004年04月26日, 星期一 16:45

Trackback

你可以使用这个链接引用该篇日志 http://publishblog.blogdriver.com/blog/tb.b?diaryID=130736

回复

- 评论人:gmark

Mon Apr 26 19:44:58 CST 2004  作者邮箱 

JOTM和SQLServer一起时有点问题.要用第三方的驱动

评论内容: