|
源代码网推荐
源代码网整理以下一、系统实现的功能 源代码网整理以下 本会议室系统主要用于EasyJF开源团队的成员网上会议使用,会议系统模拟传统的会议形式,可以同时开设多个不同主题的会议室,每个会议室需要提供访问权限控制功能,会议中能够指定会议发言模式(分为排队发言、自由发言两种),系统能自动记录每个会议室的发言信息,可以供参会人员长期查阅。 源代码网整理以下会议系统的用户支持游客帐号参加会议,同时也提供跟其它用户系统的接口,比如EasyJF官网中的开源论坛系统。 源代码网整理以下会议系统暂时使用文字聊天的方式,并提供语音及视频的接口。 源代码网整理以下 二、技术体系 源代码网整理以下 服务器端使用Java语言,MVC使用EasyJWeb框架; 源代码网整理以下客户端使用AJAX技术与服务器端交互数据; 源代码网整理以下会议历史信息储存格式使用文本格式,方便系统安装运行,也便于管理。 源代码网整理以下 三、会议室服务器端设计 源代码网整理以下 会议室服务器端是整个会议系统的核心部分,服务器端程序设计的好坏影响到整个系统的质量。 源代码网整理以下首先,根据会议室要实现的功能进行抽象分析。一个会议室对象,应该包括会议主题、会议简介、参会人数限制、公告、会议室类型、访问权限设定、房间密码、当前参会的人员、当前发言的人员、排队等待发言的人员等参数信息。我们把他封装一个Java对象当中。如下面的ChatRoom代码所示: 源代码网整理以下 public class ChatRoom{ private String cid;//主键 private String title;//聊天室主题 private String intro;//聊天室简介 private String announce;//聊天室公告 private String owner;//聊天室创建人 private Integer maxUser;//最大在线人数 private Integer intervals;//最大刷新时间间隔 private String vrtype;//访问权限 private String vrvalue;//访问值 private Integer status;//聊天室状态 private Date inputTime; } 源代码网整理以下需要一个管理会议室的类,与会议有关的操作(如启动会议、关闭会议)等都直接找他。该类还应该即有自动定时检测用户在线情况(防止用户意外退出)、把内存中的会议历史发言信息保存到文本文件中等功能。这里可以考虑使用一个ChatService类提供这些功能: 源代码网整理以下 public class ChatService implements Runnable { private static final Map service=new HashMap(); //会议室服务,系统中的当前会议室存放到该表集合中 private static final int maxServices=10;//可以同时开的最大会议室数 private static final SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd"); private final List msgs;//聊天信息Chat private final List users;//在线用户,ChatUser private final List talkers;//排队发言人数Talker private final List manager;//会议室管理员 private Talker currentTalker;//当前发言人 public ChatService() { this.msgs=new ArrayList(); this.users=new ArrayList(); this.talkers=new ArrayList(); this.manager=new ArrayList(); this.maxUser=1000;//最大1000人同时 this.interval=1000*60*5;//5分钟以前的信息 } } 源代码网整理以下
源代码网供稿. |