<b>Spring集成JOTM的JTA事件管理</b>[Java编程]
本文“<b>Spring集成JOTM的JTA事件管理</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
Spring中集成JOTM 配置JTA事件:
假定业务中要用到多个数据库,我们但愿在业务办法中,当对某一个数据库的数据表举行操作的事件失利并回退(rollback),别的某一个数据库的数据表的操作事件也要回退,但利用普通的事件管理达不到这样的事件管理效果,这就需求实现 JTA 事件管理了.
这里我们在SPring中集成 Object web 的一个开源JTA实现JOTM (可以在http://jotm.objectweb.org下载完好版) 来实现JTA事件管理.
1、将必须的类包放入类途径中:
jotm.jar, xapool.jar, jotm_jrmp_stubs.jar, jta-spect1_0_1.jar, connector-1_5.jar等等.
2、编写JOTM配置文件carol.properties,将其放到类途径下:
Java代码
#JNDI调用协议
carol.protocols=jrmp
#不利用CAROL JNDI封装器
carol.start.jndi=false
#不启动命名服务器
carol.start.ns=false
#JNDI调用协议
carol.protocols=jrmp
#不利用CAROL JNDI封装器
carol.start.jndi=false
#不启动命名服务器
carol.start.ns=false
3、在MYSQL中成立两个数据库 "jtatesta","jtatestb":
Java代码
CREATE DATABASE IF NOT EXISTS jtatesta;
USE jtatesta;
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`user_id` int(10) unsigned NOT NULL auto_increment,
`user_name` varchar(45) NOT NULL,
`user_password` varchar(45) NOT NULL,
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1;
INSERT INTO `user` (`user_id`,`user_name`,`user_password`) VALUES
(1,'tufu','tufu');
CREATE DATABASE IF NOT EXISTS jtatestb;
USE jtatestb;
DROP TABLE IF EXISTS `grade`;
CREATE TABLE `grade` (
`grade_id` int(10) unsigned NOT NULL auto_increment,
`user_id` int(10) unsigned NOT NULL,
`grade` double NOT NULL,
PRIMARY KEY (`grade_id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=latin1;
INSERT INTO `grade` (`grade_id`,`user_id`,`grade`) VALUES
(1,0,100);
CREATE DATABASE IF NOT EXISTS jtatesta;
USE jtatesta;
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`user_id` int(10) unsigned NOT NULL auto_increment,
`user_name` varchar(45) NOT NULL,
`user_password` varchar(45) NOT NULL,
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1;
INSERT INTO `user` (`user_id`,`user_name`,`user_password`) VALUES
(1,'tufu','tufu');
CREATE DATABASE IF NOT EXISTS jtatestb;
USE jtatestb;
DROP TABLE IF EXISTS `grade`;
CREATE TABLE `grade` (
`grade_id` int(10) unsigned NOT NULL auto_increment,
`user_id` int(10) unsigned NOT NULL,
`grade` double NOT NULL,
PRIMARY KEY (`grade_id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=latin1;
INSERT INTO `grade` (`grade_id`,`user_id`,`grade`) VALUES
(1,0,100);
以上是“<b>Spring集成JOTM的JTA事件管理</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |