电脑爱好者,提供IT资讯信息及各类编程知识文章介绍,欢迎大家来本站学习电脑知识。 最近更新 | 联系我们 RSS订阅本站最新文章
电脑爱好者
站内搜索: 
当前位置:首页>> XML专区>>flash中通过XMLSocket监控生产系统(3-1) -2:

flash中通过XMLSocket监控生产系统(3-1) -2

来源:远方网络 | 2006-2-28 | (有1639人读过)

不断向客户端发送不同类型的有意义的XML数据,模拟生产系统的不同状态。考虑到功能的简便性,服务端只是每2秒向客户端发送一条随机类型的数据,而没有包括模拟生产系统及时的状态,如在某一时刻发生错误时,发送一条表示错误类型的数据,在实际设计编程中,基于本文中的例子,可以轻松扩展实现所需功能。

public void run() {

try {

while (true) {

System.out.println(this.getName() + "------" + i++);
d = new Date();

if(new Random().nextInt()*100 < 50){

str = "< MESSAGE TYPE=\"error\" TEXT=\"Hello, my name is Morgan!\" TIME=\"" + d.toString() + "\"/>";
} else {

str = "";
}

byte[] s= str.getBytes();

out.write(s);
out.write(0);
out.flush();

this.sleep(2000);
}

} catch (Exception ex){

ex.printStackTrace();
}
}

  以上语句是自定义线程类ServerThread的run()方法,首先利用随机数条件if语句,随机产生不同类型的XML数据,接着用OutputStream输出流对象,输出XML数据的字节数组数据,为了表示该条数据已发送完成,再发送一个0字节,随后调用输出流的flush()方法清空缓存,让输出流立即发送数据。最后使线程暂停2秒钟,等线程再次执行时,循环以上步骤。

这样,在客户端就可以每2秒钟收到一条随机类型的XML数据。详见本文附带的程序源码。

在服务端,为了简便,只是随机向两种类型(normal类型和error类型)的数据:

< MESSAGE TYPE="error" TEXT=" 数据内容" TIME=" + 系统时刻+ / >"
< MESSAGE TYPE="normal" TEXT=" 数据内容" TIME=" + 系统时刻+ / >"
XML专区热门文章排行
网站赞助商
购买此位置

 

关于我们 | 网站地图 | 文档一览 | 友情链接| 联系我们

Copyright © 2003-2024 电脑爱好者 版权所有 备案号:鲁ICP备09059398号