浏览 2118 次
锁定老帖子 主题:小配下分布式事务管理
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-03-03
由于项目要求, 需要配置下分布式事务管理.问题是这样的, 两个系统A和B, 这两个系统分别有不同的数据库dbA和dbB(这两个数据库里数据大量冗余), 以前是A系统访问dbA中的数据,B是dbB. 可现在由于业务逻辑有变, 针对一个User类所描述的信息, A系统要数据库dbB里User表里的数据. 这是第一次配置分布式事务管理,问了同事后开始在网上找相关的例子, 找到的第一个是这个链接 , 它介绍的是通过Spring + JBossTS的方式来配置的. 把它的例子下载下来后, 按它的说明一步步做, 成功了. 成功是成功了, 但有一些问题,还是存在的: 1, 当用Oracle时实现DynamicClass的问题. 例子用的是Mysql, DynamicClass有一个Mysql的实现, 但自己能不能写一个基于Oracle的实现呢? 2, 自己参照着那个Mysql的DynamicClass实现,也写了一个Oracle的实现, 当用两个不同的Database时, 没问题, 也成功.(详细例子见名为OracleXA_JBossTS.rar附件) 3, 可现在项目中用的并非是独立的Database, 而是以schema区分的. 也就是说配置数据库连接时的URL一样, 只是用户名和密码不同. 以JBossTS配置两个schema,不行. 第二个事务打不开. ........... 郁闷了, 连Oracle数据库怎么出了个 schema的问题, 在Oracle中schema与database有什么不同? 想过: 既然是在同一个database中,通过schema.tableName的方式来做,那样也就不用再配置什么分布式事务管理了. 可不行, 两个schema的用户名密码不同, 得 配两个database, 既然两个database, 就得用到分布式事务管理吧? ........ 郁闷中,再上网搜, 找到这么一个叫JOTM的东东 , 照着说明改了自己的配置试试. 成功了! (详细例子见名为OracleXA_JOTM.rar附件,所需jar包可自己下载)在Oracle中的database下的两个schema里可以了, 两个schema,两个dataSource. 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-03-13
很好 虽然没用过
但是解决我一直对于schema与database下JTA事务管理的疑问 |
|
返回顶楼 | |