基于JAVA的企业级即时平台设计与实现 - 图文(2)

2019-05-24 12:50

中南大学学士论文 基于JAVA的企业级即时通信平台设计与实现

第一章 绪 论

1.1本文研究背景及意义 1.1.1本文研究背景

近些年来,随着网络通信技术的不断发展和社会信息化建设水平的不断提高,即时通讯系统在社会生活和经济生活中得到了越来越广泛的应用。即时通讯大大改变了人们的生活和工作方式也改变了企业的工作流程,规范了内部信息交互流程,减少了企业沟通的中间环节,降低了企业的沟通成本;并使沟通活动不再受地域和时间的限制,方便了企业的信息发布,密切了企业和员工的关系。因此越来越多的企业采纳即时通讯系统作为内部的沟通模式。随着互联网上的即时通讯工具大量出现,即时通信作为一种交流形式己经在社会经济生活中占据一定的地位。另一方面,互联网技术的发展在推动即时通讯进步的同时,也使即时通讯系统的构建实现技术面临新的挑战。作为网络信息技术前沿的Java,己经是软件界的一个热门话题,它提供的跨平台性、支持网络和数据库编程,为网络系统的开发提供了新的途径。

1995年,Sun公司的Java语言以其提供的跨平台应用程序开发与配置震撼了整个编程世界。几年来,Java从一种编程语一言发展到了开发企业级应用系统的Java2平台。1999年Sun公司推出J2EE,它包括Servlet, JSP和JavaBean等许多技术和规范。J2EE平台也为Web应用的开发提供了从客户层到Web服务层到业务逻辑层的全方位技术支持,而且得到了IBM, BEA和ORACLE等很多公司的认可,是一种很有前途的也是比较成熟的开发网络应用的技术选择方案。

1.1.2本文研究意义

即时通信的确是对企业非常有用的一项技术,它能实现快速人际交流、数据共享,从而提高效率和生产力。然而对于个人即时通信,企业主管们却是又爱又恨。一个显而易见的顾虑是:你没法知道你的属下正在用它做什么,而个人即时通信软件与生俱来的娱乐性,让这一顾虑看上去似乎更有道理。于是针对企业用户的即时通信(Enterprise Instant Messenger,以下简称EIM)产品应运而生,其易于管理的特性和相对“严肃”的风格,有理由使公司的老板们相信用友CRM趋利避害是可能的。QQ,MSN等即时通讯面向全社会,会将与工作无关的人进入办公室,从而影响工作效率;而企业即时通讯客户端则是将工作相关的人引入电脑,从而提高工作效率。” 原因很简单,企业即时系统不仅可以使公司内外各个作业流程在电脑上表现出来,还能提高工作效率,简化业务流程。以企业即时通讯客户端系统为例,其所具备的点对点、一点对多点、多点对多点群发消息、文件传

3

中南大学学士论文 基于JAVA的企业级即时通信平台设计与实现

输、文件共享、白板交流、协同浏览、在线支付、数据统计、发送手机短信等功能,完全可以帮助企业降低内外交易成本,增进工作效率。而MSN等个人即时通讯系统,则更重视娱乐方面的功能,无法适应企业需求。而且,由于缺乏监督和实名制等手段,个人即时通讯更容易与工作无关的陌生人取得联系。这反而会降低工作效率,对企业即时通讯客户通的作用恰得其反。 首先,企业时常需要面对内部员工发布一些信息。传统的文件方式需要先打印出来,然后人工分发,若要收集员工的反馈信息则还要另外准备,因此效率比较低。使用客户通之后,向员工发布信息通知则变得相当简单,同时还可以即时得到反馈信息。

此外,召开内部会议是企业经常性的事务。有了客户通,利用其网络会议功能,可以方便地在员工电脑前召开或者参加会议。随着手机的普及,收发短信已经成为企业一种重要的联系方式。因此手机短信功能也被集成到企业IM之中,用友CRM让信息传达变得非常方便快捷。

1.2 国内外即时通讯发展状况

目前国内即时通讯产品市场竞争异常激烈,以腾讯QQ微软MSN网易POPO 等为代表的众多即时通讯产品显然拥有大批使用者!而其具备的高交互性特点和日新月异的新功能也让更多的网民对其爱不释手.现对国内几款主流即时通讯工具做一简要分析[2].

①腾讯QQ

据腾讯QQ 官方消息,2009年QQ在国内已拥有10.57亿多的注册用户,4.84亿活跃用户,同时在线人数1亿以上.目前腾讯QQ已成为国内用户最多的个人即时通讯工具。占据着国内约65%以上的市场份额

1999 年2 月,腾讯推出基于互联网的即时通讯工具--QQ,支持在线消息收发,即时传送语音,视频和文件,并且整合移动通讯手段!,可通过客户端发送信息给手机用户. 目前QQ已开发出穿越防火墙、 动态表情、给好友放录像、捕捉荧屏、共享文件夹、提供聊天场景、聊天时可显示图片等强大的使用功能. 另外, QQ 还增加了QQ群、 QQ秀、 QQ宠物 、QQ游戏等娱乐功能.由于QQ良好的开放功能、休闲娱乐服务,使其拥有了庞大的用户群,在近几年内突飞猛进,牢牢占据着国内即时通讯霸主地位.

②微软MSN

MSN是微软公司开发的即时聊天工具, 由于微软产品用户众多,操作简单,运行稳定,且与Windows XP 进行了无缝结合,使得MSN 的普及速度非常快,现在已经是世界主流的聊天工具,在国内即时通讯软件中稳占了第二的位置. MSN支持手写功能,但与其他即时通讯软件最大的不同是不支持离线消息. 微软会愚蠢到放弃功能强大的离线消息市场吗?盖茨肯定没那么傻,MSN 采用邮件地址作为用户名,借此建立MSN与HotMail之间的连接,当对方不在线时,你可以选择给对

4

中南大学学士论文 基于JAVA的企业级即时通信平台设计与实现

方的MSN 邮箱或HotMail 发送邮件. 这样MSN就不仅是一个简单的即时通讯软件,而演变为以MSN 为中心的整合服务.

③网易POPO

网易POPO是由网易公司开发的一款免费多媒体即时通讯工具,可谓即时通讯软件中杀出的一匹黑马,虽然推出时间不长,但POPO融合了QQ 与MSN 的优点,解决安全与隐私问题的功能非常完善,特别是好友的权限设置功能,优于其他即时通讯软件。 POPO既有即时文字聊天、语音通话、视频对话、文件传输等基本即时通讯功能,还提供邮件提醒、多人兴趣组、在线及本地音乐播放、网络电台、发送网络多媒体文件、网络文件共享、自定义软件皮肤等多种功能,并可与移动通讯终端等多种通讯方式相连[3]。用户除了可以通过在线时长积分换取免费的短信服务,还可以设置在下线时将收到的信息转发到手机上。 另外,POPO还支持用户同时登录一MSN 账户,实现了与MSN 的互通互联.

④ ICQ

ICQ是1996 年11月在全世界范围推出的第一款即时通讯软件,是现在功能最强大、全球用户最多、应用最广泛的即时通讯工具。 但是,由于它的操作和设置比较复杂,再加上全英文的聊天界面,使许多中国用户对它望而生畏,在中国市场上所占份额逐渐萎缩。 近期,就在其他同行纷纷通过增加功能来吸引用户时ICQ 反而推出了功能精简版的ICQ LITE 试图在中国市场东山再起[2]。

1.3本文内容及结构

本文对企业即时通讯系统所涉及的技术问题进行了比较系统的研究,针对即时通讯的特点,运用Java、Apache的开源通信框架Mina以及Mysql开发一个在基于TCP/IP面向连接的企业内部沟通平台。这个系统除了没有用Web技术外几乎用了本人的全部技能,这大学4年里学的java技术都可以从这个项目中得以体会,主要在一下几个方面做了研究:

①通信框架Mina。用Apache的开源通信框架Mina作为本系统的应用层,通信连接类都是在Mina的基础上封装而成。

②Java技术。在系统中大量运用Java中的Swing、多线程,IO流,集合框架以及众多的设计模式。在Swing运用了窗体重绘、倒影、透明等一系列技术。在多线程方面研究了线程的同步、互斥、加锁。系统里有大量的计模式例如:单例模式、工厂模式、生产消费者模式、命令模式、责任链模式、观察者模式,适配器模式等等

③数据持久。系统中运用了Mysql作为数据库,Hibernate作为ORM(Object Relational Mapping)层。

④解析XML。用XML文件去为系统做配置,大消息内容也是基于XML。所以此系统用了大量的XML解析。本系统运用了最新的解析XML技术XStream,在本文中我会详细介绍下如何去现实Object和XML之间的转换。

5

中南大学学士论文 基于JAVA的企业级即时通信平台设计与实现

◆本文研究背景及意义 ◆国内即时通讯发展状况 ◆内容与结构 ◆即时通讯常用技术 ◆通信系统相关技术 ◆TCP/IP与UDP简介 ◆Mina通信框架简介 ◆XML解析简介 ◆Hibernate数据持久 ◆Swing美工技术 EIM系统网络结构 EIM通信协议分析 EIM系统通信协议设计 EIM通信协议设计 EIM通信协议总结 EIM服务器分析 EIM服务器设计与实现 EIM服务器设计及实现 EIM服务器运行展示 EIM客户端分析 具 EIM客户端设计及实现 具 EIM客户端运行展示 具 EIM客户端设计与实现 结 论 结束语 图1-1:本文结构图

6

中南大学学士论文 基于JAVA的企业级即时通信平台设计与实现

第二章 相关技术理论概述

2.1即时通讯常用技术简介

现在有许多的 IM 系统,如 AOL IM、Yahoo IM 和 MSN IM,它们使用了不同的技术,而且它们互不兼容。为了创建即时通讯的统一标准,人们经过了多次尝试:IETF 的对话初始协议(SIP)和即时通讯对话初始协议和表示扩展协议(SIMPLE)、应用交换协议(APEX)、显示和即时通讯协议(PRIM)及基于 XML且开放的可扩展通讯和表示协议(XMPP)协议(常称为 Jabber 协议)。人们多次努力,试图统一各大主要 IM 供应商的标准(AOL、Yahoo 及 Microsoft),但无一成功,且每一种 IM 仍然继续使用自己所拥有的协议[4]。

这些常用的即时通讯传送协议如下:

①可扩展通讯和表示协议(XMPP):用于流式传输准实时通信、表示和请求 -响应服务等的 XML 元素。XMPP 基于 Jabber 协议,是用于即时通讯的一个开放且常用的协议。尽管 XMPP 没有被任何指定的网络架构所融合,它还是经常会被用于客户机/服务器架构当中,客户机需要利用 XMPP 协议通过 TCP 连接来访问服务器,而服务器也是通过TCP连接进行相互连接[5]。

②即时通讯对话初始协议和表示扩展协议(SIMPLE):SIMPLE 协议为 SIP 协议指定了一整套的架构和扩展方面的规范,而 SIP 是一种网际电话协议,可用于支持IM/消息表示。SIP 能够传送多种方式的信号,如 INVITE 信号和 BYE 信号分别用于启动和结束会话。 SIMPLE 协议在此基础上还增加了另一种方式的请求,即 MESSAGE 信号,可用于发送单一分页的即时通讯内容,即分页模式的即时通讯。SUBSCRIBE 信号用于请求把显示信息发送给请求者,而 NOTIFY 信号则用于传输显示信息。较长 IM 对话的参与者们需要传输多种的延时信息,它们使用 INVITE 和一个叫做消息会话中继协议(MSRP)。与 SIMPLE 协议结合,MSRP 协议可用于 IM 的文本传输,正如与SIP协议相结合,RTP 协议就可以用于传输 IP 电话中的语音数据包一样。

③Jabber: Jabber 是一种开放的、基于 XML 的协议,用于即时通讯消息的传输与表示[4]。国际互联网中成千上万的服务器都使用了基于 Jabber 协议的软件。Jabber 系统中的一个关键理念是 “传输”,也叫做“网关”,支持用户使用其它协议访问网络如 AIM 和 ICQ、MSN Messenger 和 Windows Messenger、SMS 或 E-mail。

④即时通讯通用结构协议(CPIM):CPIM 定义了通用协议和消息的格式,即时通讯和显示服务都是通过 CPIM 来达到 IM 系统中的协作。

7


基于JAVA的企业级即时平台设计与实现 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2015年12月留基委口语试题汇总

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: