基于JAVA的即时通讯系统

  • 毕业设计类型: java
  • 展示图片数量: 4
  • 展示视频数量: 1
  • 本项目包含了:源码、数据库、演示视频、远程包运行

可以点击视频播放器的右下角全屏播放

基于JAVA的即时通讯系统演示视频1

基于JAVA的即时通讯系统功能说明

对指导教师下达的课题任务的学习与理解 21世纪是信息的时代,随着网络应用的发展,聊天软件已经成为最热门的应用软件之一。即使通讯系统已经不仅仅是通讯工具,它已经成为一个交流互动、信息管理集于一身的多元化平台。开发基于桌面的,面向个人的大众化聊天软件,可以满足网民在网络交流的需要,和电话机有着异曲同工之妙,但较之电话和手机,聊天软件具有方便快捷,功能强大,交流成本低等优点。 通过上述的分析和总结,本文从普通网民用户的角度出发,开发基于Java通信的聊天软件。该软件采用了客户端/服务器(C/S)体系结构 ,由于Java是当下最流行的开发语言 ,它一开始就内置了对网络编程的支持,它提供的强大的API,可以使程序员很轻松地开发出强大的网络应用程序。 课题主要技术如下: (1)学习和熟练掌握Java程序设计语言; (2)掌握数据库的设计理论和方法,掌握面向对象的软件工程方法学; (3)分析和设计该系统的软件体系结构,实现界面友好、操作简单、灵活性高、系统安全性高、运行稳定。 课题的成果形式: (1)实现即时通讯系统的各项功能,完成软件设计 (2)根据所设计的系统完成毕业论文 二、阅读文献资料进行调研的综述 (1)即时通讯系统的发展历程 即时通讯是一个终端连网一个即时通讯网路的服务。即时通讯不同于e-mail,在于它的交谈是即时的。大部分的即时通讯服务提供了Presence Awareness的特性──显示联络人名单,联络人是否在线上与能否与联络人交谈。 在早期的即时通讯程式中,使用者输入的每一个字元都会即时显示在双方的荧幕,且每一个字元的删除与修改都会即时的反应在荧幕上。这种模式比起使用e-mail更像是电话交谈。1970年代早期,一种更早的即时通讯形式是柏拉图系统(PLATO system)。之后在1980年代,UNIX/Linux的交谈即时讯息被广泛的使用于工程师与学术界。1990年代即时通讯更跨越了网际网路交流。1996年11月,ICQ是首个广泛被非UNⅨ/Linux使用者用于网际网路的即时通讯软体。在ICQ的介绍之后,同时在许多地方有一定数量的即时通讯方式发展,且各式的即时通讯程式有独立的协定,无法彼此互通。这引导使用者同时执行两个以上的即时通讯软体,或者他们可以使用支援多协定的终端软体,如Gaim、Trillian或Jabber。 IM(Instant Messenger)软件一诞生,就受到了网民的喜爱,并且风靡全球。在它的发展史上四位以色列人是功不可没的,在1996年他们成立了Mirabilis公司,并在同年11月推出了世界第一个即时通讯系统软件ICQ,意为“I seek you”,简称ICQ,在全球即时通讯市场占有重要的地位。 近几年来来,即时通讯软件的发展更是突飞猛进。在短短的几年内,网络即时通信展现出来了取代传统通讯方式的势头。继电子邮件之后,即时通讯对我们的通信方式又进行了一场革命。即时通讯所拥有的实时性、跨平台性、成本低、效率高等诸多优势,已经逐渐成为人们生活通讯不可或缺的方式之一。目前,国内最流行的即时通讯软件是QICQ(简称QQ)。它以良好的中文界面和不断增强的功能形成了一定的QQ网络文化。。随着互联网成长起来的新一代,在交换联系方式时已经习惯了交换QQ号。 (2)著名的即时通讯软件简介 ①腾讯QQ QQ是腾讯QQ的简称,是腾讯公司开发的一款基于Internet的即时通讯IM软件。目前QQ已经覆盖Microsoft Windows、OS X、Android、IOS、Windows Phone等多种主流平台。其标志是一只戴着红色围巾的小企鹅。QQ支持在线聊天、视频聊天以及语音聊天、点对点断点续传文件、共享文件、网络硬盘、自定义面板、远程控制、QQ邮箱、传送离线文件等多种功能,并可与多种通讯方式相连。1999年02月,腾讯正式推出第一个即时通讯软件——“OICQ”,之后改名为腾讯QQ。此外QQ还具有与手机聊天、视频通话、语音通话、点对点断点续传传输文件、传送离线文件、共享文件、QQ邮箱、网络收藏夹、发送贺卡等,储存文件等功能。QQ不仅仅是简单的即时通讯软件,它与全国多家寻呼台、移动通信公司合作,实现传统的无线寻呼网、GSM移动电话的短消息互联,是国内最为流行功能最强的即时通信(IM)软件。腾讯QQ支持在线聊天、即时传送视频、语音和文件等多种多样的功能。同时,QQ还可以与移动通讯终端、IP电话网、无线寻呼等多种通讯方式相连,使QQ不仅仅是单纯意义的网络虚拟呼机,而是一种方便、实用、超高效的即时通信工具。QQ可能是现在在中国被使用次数最多的通讯工具。qq状态分为不在线,离线,忙碌,请勿打扰,离开,隐身,在线,Q我吧。还可以自己编辑qq状态。 ②Wechat 微信(Wechat)是腾讯公司于2011年1月21日推出的一个为智能终端提供即时通讯服务的免费应用程序,由张小龙所带领的腾讯广州研发中心产品团队打造 [2]? 。微信支持跨通信运营商、跨操作系统平台通过网络快速发送免费(需消耗少量网络流量)语音短信、视频、图片和文字,同时,也可以使用通过共享流媒体内容的资料和基于位置的社交插件“摇一摇”、“漂流瓶”、“朋友圈”、“公众平台 ”、“语音记事本”等服务插件。 ③MSN(Massage Service Network) MSN是由微软公司在1995年8月24日成立的因特网服务提供商,并随着Windows 95一起发布。MSN是世界上第二大的因特网服务提供商,拥有着9百万的用户,仅次于AOL。 MSN原是一个类似CompuServe及AOL的收费服务,提供拨号上网及增值信息、网络聊天室(网络即时通讯)等服务,但同时亦允许其它现有互联网用户透过因特网来使用。后来互联网的普及化,使微软将大部份原来要收费的项目转变为免费的MSN入门网站,这是MSN的第二阶段生命。微软在收购Hotmail之后,不断将旗下的服务重新整合。 MSN Messenger的最新版本是Windows Live Messenger 9.0。MSN 9是一种Internet软件,它基于Microsoft高级技术,可更有效地利用Web。MSN 9是一种优秀的通信工具,使Internet浏览更加便捷,并通过一些高级功能加强了联机的安全性。这些高级功能包括家长控制、共同浏览Web、垃圾邮件保护器和定制其他。 (3)即时通讯系统的特点 参考几大即时通讯软件发现,即时通讯软件同质化现象明显,功能大致围绕文字信息传递、文件云端保存与传递、语音视频通话、好友动态等展开。用户界面通常是以最近联系人为主界面,主界面上会显示与各个最近联系人最近一条的聊天纪录,而后用户可以选择自己想要使用功能模块,大致分为通讯录、好友动态、个人信息等。 三、根据任务书的任务及文献调研结果,确定系统需求分析 (1)业务需求分析 为了识别登陆用户的身份,即时通讯系统需要为用户提供账号注册的功能,同时满足用户填写个人信息的需求。此外还要使用户能够添加好友、删除好友与好友聊天的功能。当然,用户还有修改自己个人信息的功能,也有查看其他用户个人信息的功能。 (2)功能需求分析 作为一个完整的即时通讯系统应具备以下功能: ①用户可以实现登录和注册账号 ②用户可以查看好友列表,并可以对好友进行添加和删除 ③用户可以修改和查看自己的信息 ④用户可以实现与好友之间的信息传递和文件传输 ⑤用户可以查看与好友的聊天纪录 (3)面向对象编程(Object-Oriented Programming) 面向对象程序设计(Object Oriented Programming)作为一种新方法,其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。模型是用来反映现实世界中事物特征的。任何一个模型都不可能反映客观事物的一切具体特征,只能对事物特征和变化规律的一种抽象,且在它所涉及的范围内更普遍、更集中、更深刻地描述客体的特征。通过建立模型而达到的抽象是人们对客体认识的深化。 (4)Java Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。 Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。 (5)数据库设计 数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。 数据库设计的设计内容包括:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施和数据库的运行和维护。 (6)MySQL MySQL是一个关系型数据库系统,由瑞典MySQLAB公司开发,目前属于Oracle旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS(Relational Database Management System,关系数据库管理系统) 应用软件。 MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开码放源这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配PHP和 Apache可组成良好的开发环境。