基于WWW的协同式CAI软件的Java实现 第3页

  另一类是网上的协作应用(如实时讨论等),在这种方式中,任何一方都可能成为消息的发送方,而另一方则成为消息的接收方。发送方的动作由用户界面的各类事件驱动引发,其时间性是偶然的,接收方必须时刻处于接收监听状态。由于通信双方处于对等的位置,因此双方都要处于接收等待状态。
  由于Java的安全性限制,两客户浏览器间不能直接建立Socket连接,要实现两浏览器间的通信必须通过Web服务器上的Java应用程序进行转接。综上所述,为了实现系统的功能,笔者将系统的总体设计为如图1的形式。
  有关说明:
① 学生和教师分别以客户/服务器的方式与Web服务器上Java应用程序建立通信连接。服务器方的连接监听线程负责监听来自客户的Socket连接申请。服务方要为每个连接客户建立一个消息处理线程,该线程负责接收来自相应客户的消息,对消息进行分析处理。将消息转发到其他客户。
② 学生和教师方都有一个消息接收线程负责接收来自服务方的消息。该线程通过调用用户界面对象中的方法将消息要求反映在用户界面上。为此,在设计消息接收线程类时,在其构造方法中将用户界面对象作为参数传给该类的对象,这是Java中实现对象间互访的基本方法。
③ 访问试题库的过程是学生方发送相应消息到服务器,服务器方通过COM组件RDO访问基于ODBC的数据库,并将访问结果传回给学生。
④ 教师可对学生的学习过程进行控制,在服务器方有一个线程专门接收来自教师的控制消息并将其转发给学生,这些控制包括页面学习向导和对学习阶段的控制,这些学习阶段包括:实时讨论、做练习、测试。学生的操作界面将随教师的控制消息变化。

4 几个技术关键

上一页  [1] [2] [3] [4] [5] [6] 下一页

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有