1、 本科毕业论文(设计) 题 目 高校局域网聊天室系统的设计与实现 院(系) 计算机与信息工程学院 专 业 计算机科学与技术 完成日期 : 2014 年 5 月 25 日 巢湖学院本科毕业论文 (设计 )诚信承诺书 本人郑重声明:所呈交的本科毕业论文 (设计 ),是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 本人签名: 日期: 巢湖学院本科毕业论文 (设计 )使用授权说明 本人完全了解巢湖学院有关收集
2、、保留和使用毕业论文 (设计 )的规定,即:本科生在校期间进行毕业论文 (设计 )工作的知识产权单位属巢湖学院。学校根据需要,有权保留并向国家有关部门或机构送交论 文的复印件和电子版,允许毕业论文 (设计 )被查阅和借阅;学校可以将毕业论文 (设计 )的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编毕业,并且本人电子文档和纸质论文的内容相一致。 保密的毕业论文 (设计 )在解密后遵守此规定。 本人签名: 日期: 导师签名: 日期: 摘 要 近年,随着全球信息化程度的加深,局域网的发展也同样迅速,很多政府机构、企业、学校,最先都是以一个统一的局域网联结在一起,
3、再接入 INTERNET。为了越来越高效、快捷地处理各种内部事务,公司对于使用局域网来进行工作提出了越来越迫切的要求。并且出于安全考虑,机构内部也需要构建一种聊天机制,以便于内部的人员信息交流与文件的传输。 本系统通过 Java 的 网络编程 实现了一个基于局域网的聊天室系统。该局域网聊天室采用客户端 /服务器( C/S)模式 ,运用了 Java 的socket 技术, JDBC 等技术。本系统基本上具有聊天软件的大多数功能,如注册帐号、多帐号登录、离线发消息等。 关键字: 高校局域网聊天室系统 ; TCP/IP ; Java; Mysql Abstract In recent years,
4、with the degree of global information, the development of local area network (LAN) is also quickly. Many government agencies, enterprises, schools, the first is based on a unified together, local area network (LAN) connection to access the INTERNET. In order to more and more efficient, fast to deal
5、with all kinds of internal affairs, the company for the use of local area network (LAN) to work has become more and more urgent requirements are put forward. And for security reasons, internal agency also needs to build a chat mechanism, so that the internal personnel information exchange and transm
6、ission of files. The system through the Java network programming implements a system based on LAN chat room. The LAN chat room adopts client/server (C/S) model, using the Java socket technology, such as JDBC technology. This system basically has the function of most of chat software, such as registe
7、red account, account login, offline messages, etc. Keywords:Universities LAN chat room system ;TCP/IP ;Java ; Mysql 目 录 第 1 章绪论 . 1 1.1 系统开发背景 . 1 1.2 系统开发目标 . 1 1.3 开发工具和开发环境 . 1 1.3.1 MyEclipse 2013 . 1 1.3.2 MySql . 2 1.3.3 Navicat for MySql . 2 1.3.4 JDK(Java Development Kit). 2 第 2 章系统分析 . 3 2.
8、1 需求分析 . 3 2.2 可行性研究 . 3 2.2.1 经济可行性 . 3 2.2.2 技术可行性 . 3 2.2.3 操作可行性 . 4 2.3 系统功能分析 . 4 第 3 章系统总体设计 . 6 3.1 系统总体结构模型 . 6 3.2 数据库设计 . 7 3.3 界面设计 . 9 第 4 章系统实现 . 11 4.1 服务器模块 . 11 4.1.1 监听模块 . 11 4.1.2 与客户端连接的模块 . 12 4.2 客户端模块 . 12 4.2.1 注册模块 . 12 4.2.2 登录模块 . 13 4.2.3 主界面模块 . 13 4.2.4 聊天模块 . 14 第 5 章
9、系统测试与维护 . 17 5.1 系统功能测试 . 17 5.1.1 登录功能测试 . 17 5.1.2 主界面功能测试 . 17 5.2 系统维 护 . 18 第 6 章结论与展望 . 19 6.1 系统总结 . 19 6.2 前景展望 . 19 参考文献 . 20 巢湖学院 2014 届本科毕业论文(设计) 1 第 1 章绪论 1.1 系统开发背景 局域网聊天软件,简称 LCS( LAN chat software),是一种面向企业局域网终端用户的网络交流服务工具。当前,中国市场上的局域网聊天软件主要有:腾讯 RTX、 IBM 的 LotusSametime、通软联合的 GOCom、伟我、
10、中国赢通汇讯 WiseIC等。局域网聊天软件不仅仅只是一个聊天工具,它已发展成为一个综合化的信息平台,包括娱乐、搜索、资讯、交流、办公协作、客户服务等等。局域网聊天的一大特色在于即时性,它为企业内部的实时协作和即时沟通提供了可能,建立起员工交流的平台。不仅如此,它大大加深了人们之间的联系,从普通的文字聊天,到语音、视频聊天,到两人私聊,到广播聊天。 1.2 系统开发目标 作为聊天工具,最基本的就能进行基本的文字交流。但我们要给客户最大的自由,能让客户在任何联网的时候发送消息。这就需要软件实现对离线客户消息的存储并在客户上线 时及时 转发。 为了增加聊天时的乐趣,我还想添加发送表情,消息发送的音
11、效,以及提示消息的头像闪烁等功能。同时为提高软件的实用性,我还想增加一些图片、文件传输的功能。但是事实上我最终仅仅实现了其中的小部分功能,比较遗憾。 1.3 开发工具和开发环境 1.3.1 MyEclipse 2013 MyEclipse 企业级工作平台( MyEclipseEnterprise Workbench ,简称MyEclipse)是对 EclipseIDE 的扩展,是一个非常优秀的 Eclipse 插件集合。使用 MyEclipse 我们可以更方 便高效的来进行软件的开发。它的功能十分丰富,具有编码、测试、调试及发布功能。 MyEclipse 支持大多数开源产品,如 JDBC,Ja
12、va Servlet,AJAX,EJB3,JSP 等。它的快捷键设计也十分合理,特别是 Alt+?的帮助提示快捷键,仅此一个快捷键就能成倍提高编码的速度。 高校局域网聊天室系统的设计实现 2 1.3.2 MySql MySQL 目前属于 Oracle 公司,是一个关系型数据库管理系统。 MySQL 所使用的是访问数据库的常用标准化 SQL 语言语言。大多中小型网站的开发都会去使用MySQL 去进行网站的开发。因为它的社区版的性能良好,和 PHP、 Apache 一起可以非常方便的开发出高质量的网站。 MySQL 占用体积小、速度办快,特别是它放源码,大大减少了开发成本。虽然与大型的数据库相比,
13、 MySQL 有许多不足。但是一般的中小型的企业对于数据库的需求它应付起来会游刃有余。 1.3.3 Navicat for MySql Navicat 是专为数据库管理而设的,它的设计既符合数据库管理员,又符合开发人员。而且它能以单一的程序同时连接到多个不同的数据库,使各个数据库之间数据传输更加方便。 Navicat for MySQL 是基于 Windows 为 MySQL 量身打造的管理工具。它提供的图形用户界面让用户可以直观地去追创建、存取、共享用组织数据。用户还方便地对记录进行备份,跨数据库的数据移动,对用户权限的进行管理,浏览数据库,表,记录,建立、修改、删除记录,编写或执行 SQL
14、 语句。 1.3.4 JDK(Java Development Kit) Java 最主要的贡献过者是 James Gosling,是 Sun 公司开发的一门语言。“ Java”中文名是“爪哇”,这名字本是一个盛产咖啡的小岛, James Gosling 决定以这个岛名命名这门语言的寓意是为全世界人端上一杯咖啡。 Java 的最大特点就是它的跨平台性 3。 JDK(Java Development Kit) 是 Java 软件开发工具包 (SDK),也是 Java 的核心,包括编译器, Java 工具, Java 运行环境( JRE, Java Runtime Environment),Jav
15、a 的基础类库。 JDK 主要有以下三个版本: Java SE, Java 标准版。 SE 提供了标准的 Java 开发平台,使用 SE 可以开发桌面应该程序,也可以是 Java Applet。 Java EE, Java 企业版;用 EE 能构建企业级的服务应用。 Java EE 在 Java SE的基础上增加了交易管理、消息处理等功能。 Java ME,Java 微型版。 ME 是一种非常小的 Java 运行环境,这样它就可以用于嵌入式的产品中。 巢湖学院 2014 届本科毕业论文(设计) 3 第 2 章 系统分析 2.1 需求分析 高校局域网聊天室系统最主要的功能就是要让在线的用户能随时
16、地进行文字聊天。但是对于那些发给不在线的用户的消息我们也要为之保存在服务器,并在用户上线时及时的转发给用户。这样就要用到数据库,用来存储、查找、取出离线用户的数据。我们还要给每个用户一个帐号, 这就需要系统提供注册功能为注册的用户生成一个帐号。这样本系统的主要活动如下: ( 1) 开启服务器,等待客户端的连接。 ( 2) 打开登录界面,点击注册按钮。 ( 3) 输入必要的信息,得到系统分配的帐号。 ( 4) 返回登录界面,用得到的帐号登录。 ( 5) 用户好友登录自动更新列表。 ( 6) 与好友进行文字聊天。 ( 7) 若好友不在线也可发送消息,当好友上线时即可收到消息。 2.2 可行性研究
17、2.2.1 经济可行性 从观察本校的现况来看,整个校园的联系主要是手机与广域网的聊天工具。因此我校确实需要建立一个校内局域网的聊天软件。这样可以大大加强学生之间老师之间以及学生与老师之间的沟通,逐渐形成相互借鉴与讨论的氛围,提高了同学的学习效率与老师的工作效率。这样平时教学过程中的会议通知,作业布置与上交,文件的传输与共享,问题的探讨与解决,都无疑会更加方便快捷。 如今同学老师大多都拥有自己的计算机,校园的网络也已铺设好。虽然还需要一个服务器,以及以后的系统与设备维护费用,但从长远的角度看这个软件所带来的效益将会远远超过前期的支出 。因此,本系统在在经济上是可行的 1。 2.2.2 技术可行性
18、 技术上的可行性,主要指软硬件条件能否符合本系统的要求,现有的技术可高校局域网聊天室系统的设计实现 4 不可以实现本软件。本系统采用 MySQL 数据库作为服务器使用的数据库,能适应中小型数据访问量的要求。若随着学校的发展 MySQL 数据库支撑不住也可更换大型的数据如 Oracle 数据库。 开发工具是 MyEclipse2010,作为开源的 Java 集成开发环境深受大家的喜爱。 MyEclipse 界面直观,操作简单,很容易上手。其功能也十分强大,完全可以开发出本系统。 Java 是现在很流行的 面向对象的语言,在校时经学习的基础内容,在实习期间又在导师的指导下又做了一个小项目,受益很多
19、。因此,对于开发这个局域网聊天软件有上信心。整个系统的开发过程,主要依靠在网络上搜索相关软件的制作视频,并补习了 Java 的基础语法。对于遇到的问题,也在上网搜索解决方法以及查阅资料下的逐个解决。 2.2.3 操作可行性 由于腾讯 QQ 等网络聊天的工具的普及,现在人们对于聊天软件的使用已经驾轻就熟了。本系统的设计也是在参考现今的聊天软件的操作习惯来设计的,所以人们不会对本软件感到很陌生。其界面简单明了,而且在系统中也设 有比较明显的提示信息,用户根据上面的提示将会很轻松地使用来进行正常注册、登录及聊天。 2.3 系统 功能分析 由上述的需求分析可以确定本系统的所需的分为四个功能模块:启动服务器模块,注册模块,登录模块,聊天模块。 1.启动服务器模块 在服务器的界面,点击“启动服务器”按钮,即启动了服务器。此时,本系统的服务器模块即开始运行,监测本机的上的特定端口,等待客户端的连接。如有客户来连接,则首先判断是否是合法用户,若是则允许用户正常登录,若不是则拒绝登录并返回提示信息。 2. 注册模块 注册模块中,用户只需在填写界面上的各项后点击“提交”按钮,即可完成注册。这时面的提示区域会以红字显示你所的帐号及密码,并请用户记住。 3.登录模块 用户只需填写上正确的用户名及密码,点击“登录”后,即进入到程序的界