用AJAX+J2EE实现一个网上会议室系统

2016-01-29 11:22 15 1 收藏

用AJAX+J2EE实现一个网上会议室系统,用AJAX+J2EE实现一个网上会议室系统

【 tulaoshi.com - Javascript 】

 今年大家都在炒作Web2.0,其中的一门技术Ajax也是跟着火了起来,因此前面我写了一篇名为《忽悠一下AJAX》的文章,简单地分析了一下 Ajax的技术的实质。虽然笔者不太喜欢跟风,但Ajax有一些地方还是比较有用的。前段时间做了EasyJF开源团队的网上会议系统,就用到了Ajax 技术,下面把设计思路发出来跟大家分享一下。

  一、系统实现的功能

  本会议室系统主要用于 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分钟以前的信息
}
}
  会议发言信息也需要封装成一个类,表示发言人、接收人、内容、发言时间、类型等,大致如下面的Chat类:

public class Chat {
private String cid;
private String sender;
private String reciver;
private String content;
private Date vdate;
private Integer types;
private Integer status;
}
  还有表示参加会议的人的信息,包括参会人名称、IP地址、状态等,如下面的ChatUser类所示:

public class ChatUser {
private String ip;
private String port;
private String userName;
private Date lastAccessTime;
private Integer status;
}
  另外还需要一个表示当前发言人的Talker类,表示当前的发言人,发言开始时间,发言预计结束时间等。

  在服务器端的设计中,会议室

来源:https://www.tulaoshi.com/n/20160129/1482240.html

延伸阅读
标签: 生活常识
小会议室怎么配有室内花园 同样是室内,这会议室小虽小,却配有室内花园 在鹿特丹德夫哈芬附近,一个前蒸汽厂的所在,建筑与城市规划工作室 Jvantspijker 最近将其主要空间转变成了一个开放式办公室。设计师并未将工厂式的高大空间做过多改动,在基本保持原有的比例、亮度和通透性下,这个重新改造后的办公室仍然非常宽阔,但会...
标签: 室内设计
会议室效果图 会议室效果图 效果图设计欣赏
标签: Web开发
开玩笑、原文出处:http://java.sun.com/developer/technicalArticles/J2EE/AJAX/      中英文对照如下、全是我自己译的、水平有限(6级考78分)、欢迎指正:      Asynchronous   JavaScript   Technology   and   XML ...
标签: Web开发
话说Buffalo是姓中的写的,支持下国产! 来先顶一个。 Buffalo处理Ajax有多牛,嘿嘿 我还真没有正儿八经的整过。惭愧啊,争取在最近好好研究下吧。 Buffalo支持和Spring整合。嘿嘿 这也是一个亮点。亮的有些不自在。为啥?   假如你用Spring+Struts+Hibernate来构建的轻量级J2EE框架,Spring和Struts整合有好几种方式,有一种方式不要要论...
标签: 室内设计
会议室总体设计要求    采用黑色或鲜艳色彩的饱和色,通常采用浅蓝色、浅绿色、浅灰色等等。各墙面不宜采用复杂的装饰图案,以免摄像机移动或变焦时图象产生模糊现象。总之,会场布置应庄重、朴素、大方。 1、会议桌 会议桌布置采用排式。这种方式的布置可使与会者自然坐于桌前就能看清监视器并被摄像机摄入镜头。...

经验教程

496

收藏

80
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部