您的位置:软件 > 开发者网络 > 开发工具 > Java > 正文
J2EE Web服务客户端质量报告(三)
[文章信息]
作者:陈姣姣编译
时间:2004-05-08
出处:
责任编辑:方舟
[文章导读]
Serializer 软件包暴露的每个方法捕捉产生的任何异常,以便事务的处理可以不管这些异常继续进行
advertisement
热点推荐
· 天极网软件频道改版调查
· 10.26精选 图画:葡萄小鸡图
· Windows操作系统网络管理技巧
· Fireworks国画:葡萄小鸡图
· 黑客张大民江南小城奇遇记
[正文]

1 2  下一页

天极IT资讯短信服务 电脑小技巧
资费:包月5元
手机:
介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。

  Payload软件包

  Payload软件包可用于客户端,也可用于服务器。它包含三个类:ClientReport、CurrentReport、和 Serializer。



  ClientReport 表示一个客户端次数报告:

package Payload;

import java.io.*;
import java.util.*;

/**
*
* @author Brian Connolly Brian@ideajungle.com
*/
public class ClientReport implements Serializable {

 public Date clientStartDateTime;
 public Date serverStartDateTime;
 public long clientElapsedMS;
 public String type;
 public String status;
 public String transactionID;
 public String clientID;
 //Default public constructor for WSDL
 public ClientReport() {
 }

/*
. . . Get, set property methods are not shown
*/

  在上述代码中,clientStartDateTime记录客户端初始化事务的时间。serverStartDateTime 当前没有使用;它的用途是保存事务的服务器开始时间以便事务次数可与服务器资源使用的随时间的变化关联起来。

  ClientElapsedMS是我们记录的主要工具:从客户端开始记录新事务到它收到最后一个Web服务调用的结果为止这段时间的毫秒数。

  Type允许客户端使用类型特征化事务。通常,事物系统提供许多种类型的事务。我们期望某些类型对于服务器来说相对容易一些,某些类型相对难一些,这样当我们分析响应次数和测量服务器资源时我们能够将他们辨别出来。

  Status记录事务完成时的完成状态。

  ClientID 是客户端标记符。当分析服务品质时我们可以使用它来区别同一个客户端完成的事务。

  客户端使用第二个类CurrentReport来定界应用事务:

package Payload;

import java.util.*;
import java.rmi.server.*;

/**
*
* @author Brian Connolly Brian@ideajungle.com
*/
public class CurrentReport {

 public static UID ClientIdentifier = new UID();
 /** Holds value of property currentReport */
 public static ClientReport Report;
 public static ClientReport LastReport;

 /** Creates a new instance of CurrentReport */
 public CurrentReport() {
 }

 public void BeginTransaction() {
  Report = new ClientReport();
  Report.setClientID(ClientIdentifier.toString());
  Report.setClientStartDateTime( new Date());
 }

 public void CommitTransaction(String transactionID, String type, String status) {
  Report.setTransactionID(transactionID);
  Report.setStatus(status);
  Report.setType(type);
  long l1 = Report.getClientStartDateTime().getTime();
  long l2 = new Date().getTime();
  Report.setClientElapsedMS(l2-l1);
  LastReport = Report;
  Report = null;
 }

/** Getter for property currentReport
* @return Value of property currentReport
*/

 public static ClientReport getReport() {
  ClientReport last = LastReport;
  LastReport = null;
  return last;
 }

/** Setter for property currentReport
* @param currentReport New value of property currentReport
*/

 public void setReport(ClientReport Report) {
  this.LastReport = Report;
 }
}

  CurrentReport保存进行中的事务的当前 ClientReport 。它也保存LastReport,也就是一个完成的事务。它还产生一个作为唯一设备标记符使用的客户端标记符——在实际的应用中,这个客户端标记符可被修改为全局的唯一标记符。CurrentReport是非线程安全的;我们假设在客户端应用中只有一个单线程执行服务器事务。


1 2  下一页

·"WAP天极之IT新闻资讯,50万元等你拿"    ·天极WAP之游戏狂图,50万元等你下载

天极社区邀请您:写博客日记  上传相片   论坛聊天  订阅电子杂志  推荐网摘   免费图铃工具
笔名:   请您注意:

 遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。

 天极网拥有管理笔名和留言的一切权利。
评论:
 

发表评论推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志
相关内容阅读排行榜
  • 两种设计模式在EJB开发中的应用
  • Struts快速学习指南之一
  • 数组在Java编程中的应用
  • J2EE Web服务客户端质量报告(二)
  • 在Java中如何实现长时间任务
  • 改善电视卡接收效果三个诀窍
  • 液晶该不该使用屏保等问答6则
  • 自力更生维修4.1音箱实例
  • 发烧大餐 六千元游戏配置
  • 10.26精选 图画:葡萄小鸡图
  • 网络打印服务器选购攻略
  • 信不信集成显卡BIOS我也照刷
  • 李鬼哪里逃 处理器假货曝光
  • Advertisement

    天极无线
    待机彩图    >>更多
    多彩动画    >>更多
    美妙和弦    >>更多
    天使在唱歌
    壁虎漫步
    PrettyBoy
    LoveLoveLove
    我是你的小小狗
    单身情歌
    十面埋伏
    祝酒歌
    回心转意
    波斯猫
    太委屈
    S.H.E
    潘玮柏
    M2M
    蔡依林
    阿牛
    林志炫
    陈弈迅
    刀郎
    黑龙
    S.H.E
    陶晶莹
    情人玫瑰坊
    音乐风云
    新片速递
    神秘测试
    都市约会
    ·天极彩信天天精彩
    ·图铃梦工厂下载无限!
    ·找寻童真,卡通专题
    ·夏日激情交友社区!
    ·星座运程,预测人生

    CSEEK搜索