快速业务通道

用JOTM向Servlet中添加事务 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16
uot;, 600); mysql> SELECT * FROM account; +----------+-------+ | client  | money | +----------+-------+ | john_doe |  100 | | jane_doe |  600 | +----------+-------+

用JOTM向Servlet中添加事务(4)

时间:2011-07-08 csdn博客 newhappy

脚本还会创建有 $500 可用现金的 atm 表。

例3 创建 atm 表

mysql> CREATE DATABASE atmtest; mysql> USE atmtest; mysql> CREATE TABLE atm( -> id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, -> cash INT) TYPE=InnoDB; mysql> INSERT INTO atm valueS(null, 500); mysql> SELECT * FROM atm; +----+------+ | id | cash | +----+------+ | 1 | 500 | +----+------+

最后,复制 $CATALINA_HOME/shared/lib 内的 JDBC 驱动程序 .jar 文件。

获取并安装 TOMCAT:本章主要介绍 Tomcat 4.1.18 及以上的版本。首先确保 没有使用以前的旧版本,安装 TOMCAT 没有什么特别,只需下载并解压缩即可。

获取并安装 JOTM:如果要使用 JOTM,只需要下载最近的二元版本并将解压缩 即可。再从lib/ 目录下将.jar 文件(除了 log4j.jar、ommons-cli.jar 和 jotm_iiop_stubs.jar) 复制到 $CATALINA_HOME/shared/lib。这样就完成了。

配置 TOMCAT:需要配置 Tomcat,使之能够从 JNDI 获取 UserTransaction 和 DataSource 对象(它们用在 foo.BankAccount 和 bar.ATM)。

首先,告诉 TOMCAT 你所使用的 JNDI 名字,以便在 WEB 应用程序中查询数 据源。这些步骤由 web.xml 完成,其代码如下。对于银行帐户数据源,使用的 JNDI 名字是 java:comp/env/jdbc/bankAccount ,而且只能在 java:comp/env/ 之后给出名字。TOMCAT 通过 JNDI 机制来解决其余的问题。对于 ATM 数据源也 同样于此。

例 4. web.xml

<web-app> <resource-env-ref> <description>Bank Account DataSource</description> <resource-env-ref-name>jdbc/bankAccount</resource-env-ref- name> <resource-env-ref-type>javax.sql.DataSource</resource-env-ref -type> </resource-env-ref> <resource-env-ref> <description>ATM DataSource</description> <resource-env-ref-name>jdbc/ATM</resource-env-ref-name> <resource-env-ref-type>javax.sql.DataSource</resource-env-ref -type> </resource-env-ref> </web-app>

您必须告诉 TOMCAT 怎么样返回 web.xml内的资源,这个过程就由bank.xml文 件来完成了。对于银行帐户和 ATM 资源,您必须设置参数,以便 TOMCAT 能将 WEB 应用程序与数据源正确相连。有关更多的详细信息,请参考 TOMCAT JNDI 数 据源基础知识。(参见 Resources)

其中一个参数需特别关注:factory.类中设置这个参数,用于当 WEB 应用程 序通过 JNDI 查询时来创建一个数据源。另外一个重要的资源(在 web.xml 中有 描述)是 UserTransaction。java:comp/UserTransaction 使用这个资源来区分 事务,它由 JOTM 来执行。

用JOTM向Servlet中添加事务(5)

时间:2011-07-08 csdn博客 newhappy

例 5 bank.xml

<Context path="/bank" docBase="bank.war" debug="0" reloadable="true" crossContext="true"> <!-- Description of the DataSource "jdbc/bankAccount" --> <Resource name="jdbc/bankAccount" auth="Container" type="javax.sql.DataSource" /> <ResourceParams name="jdbc/bankAccount"> <parameter> <

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号