当前位置:文档之家› 网络聊天室项目可行性研究报告

网络聊天室项目可行性研究报告

网络聊天室项目可行性研究报告
网络聊天室项目可行性研究报告

网络聊天室项目

1.1编写目的

计算机技术的快速发展,特别是计算机网络的发展,越来越深刻的改变了人们生活的方方面面。使得人们能以更低廉的价格,开发出更方便、更实用的网络工具。各种在线服务系统,更是深刻的影响了人们的联系和交流方式,使得人们可以自傲远隔千里之遥随时通讯。过去的种种陈旧的联系方式,已经不能满足现代生活的需要。网上聊天系统作为一种方便人们之间联系的使用系统便应运而生。网上聊天系统是人们进行交流和联系提供的一个平台。通过提供完善的网上聊天系统的管理,可以达到增进人与人之间的交流和沟通。

在网络世界中,聊天室(Chat Room)是一个最常见的服务,它最早起源于BBS站点,聊天室作为一个在漫漫长夜打发消遣时间的最佳软件,除了能够用于聊天消遣时间以外,还拥有语音聊天、视频聊天、共享图片、文件等功能。现在随着网络的发展,聊天室发展的速度已经非常迅速了,现在的聊天室技术,都已经运用到了“网络会议”上,现在有很多的会议在网上视频聊天会议[9]。

该网络聊天室项目可行性研究报告是对项目课题的全面通盘考虑,是项目分析员进行进一步工作的前提,是软件开发人员正确成功的开发项目的前提与基础.写软件项目可行性研究报告可以使软件开发团体尽可能早的估计研制课题的可行性,可以在定义阶段较早的认识到系统方案的缺陷,就可以少花时间和精力,也可以省成资金,并且避免了许多专业方面的困难.所以该软件项目可行性研究报告在整个开发过程中是非常重要的.

本报告的预期读者为项目管理人,教师,软件用户学生,软件开发工程师等。

1.2 项目概述

在Internet上,qq,MSN,飞信等网上软件,极大程度方便了各地友人之间的联系,也使世界一下子缩小了,不管你在哪里,只要你上了网,打开这些软件,就可以给你的朋友发信息。现在,企业,机关,学校都纷纷建立起自己的局域网。在局域网里,虽然可以通过文件共享的方式进行通讯,但单单使用这种方式,是不方便的。首先在局域网里的网上邻居,只能看到机器名,不清楚对方是谁,也不知道对方机器有什么资源可以共享,而且当局域网机器很多时,这种方式更加麻烦。

在市面上,聊天室的应用软件出现得比较早,比如说,Microsoft Chat,一个在界面及功能方面都已经非常完善的“聊天室”的应用软件,它是一套独立于浏览器之外的,即与浏览器无关的,需要下载客户端安装使用的套装软件,在使

用它之前还需要先熟悉其中的操作界面,才能够使用这个软件,这对于新时代匆匆忙忙,并没有太多时间去学习的网友来说,是一个非常不方便的缺陷。因此,开发出来一个操作简单,方便,不需要下载客户端安装使用的聊天软件已经成为广大网民的迫切需求。所以,根据网民的需求,越来越多的公司和网站开始开发基于浏览器的,不需要下载客户端安装使用,不需要熟悉界面操作的聊天室,以便造福更多的网友[12]。

1.3背景

A. 软件系统的名称为:“基于B/S架构的网络聊天室系统”

B. 本项目的任务提出者:软件工程方向课教研室

C. 本项目的开发者:长春工业计算机学院120403班第组。

D. 本项目的用户:学校全体学生

E. 实现该软件的单位:长春工业计算机学院120403班第组。。

F. 项目使用的软件:MyEclipse、 MySQL。

随着众多软件的推广和应用,系统的开发环境对于大多数软件已经不是那么重要,然而现阶段大多数用户所用的系统环境基本上是一样的,因此我们还必须在通用性的基础上考虑到大多数用户的系统开发环境。

电子科技的迅速发展,网络时代到来,人们通讯方式也不断的发生改变,从以前的写信到后来的呼机,到现在的手机,不断地往高科技方向发展。然而人们的聊天的方式也在发生改变,因此聊天室也随之慢慢的发展起来了,慢慢受到人们喜爱,现在我们QQ中就有各种各样的群,有的娱乐、有的技术交流、有的用来工作,总之应用非常广。聊天室的开发是有必要的,其发展的前景也是非常大的。

聊天室现在用于娱乐方面还是比较少的,主要还是用于商业方面,就目前聊天室的市场结构来看, 现在大多数的网站几乎都拥有一个完全属于自己的聊天室,现在的聊天室,运作起来是非常的简单,当然也有非常复杂的,如像QQ和YY那种聊天的工具。在国外,现在就一个普通的商务网上或者娱乐网站都有属于自己的聊天工具。聊天室的之所以这么普及主要有两个原因:一、由于现在这方面的技术已经是相当的成熟,开发这种软件的成本高;二、聊天这种软件不管是运作起来还使用起来都是比较方便的。所有很受人们的欢迎,现在都有很多专门做这种软件的公司了。在我国,聊天室市场集中度还不是很高, 其中只有一些大型的商业网站或者一些专门娱乐性的网站才有,所有在我国的市场还是相当的大。

在我国,由于现在的电脑的价格非常的便宜,人们的生活水平的提高,对网络的需要越来越大,除了在网上玩游戏、谈生意、购物、查阅资料以外,还有就是用于聊天娱乐,当我们身处在一个群体当中的时候,不管是在工作还是在学习中也好,我们都会建立起一个属于自己的聊天室,它的聊天功能是聊天室中运用最广的功能,这是网上最受欢迎和最普通以中聊天方式。聊天具有应用广泛、开发简单、操作方便、功能齐全、信息传递、简单快捷等的特独有性,因为它是用文字来传播信息,所有用于聊天时候的信息交流比较方便,相当于人与人面对面的交流,受到大多数人喜欢,因此有很多人喜欢在聊天室中聊天,还没面对面那种羞涩[2]。

首先,是操作系统的选定。操作系统种类繁多,如微软公司的DOS、WINDOWS、VISTA操作系统,还有在网络服务器上广泛用用的UNIX操作系统,还有红级一时的中国人的操作系统LINUX等等。根据应用的广泛性、普遍性和实用性,系统决定选用MICROSOFT WINDOWS 7(中文版)操作系统作为软件的操作系统平台。

其次,是编程软件的选定了。本项目研究的是基于局域网的聊天室,用java 编写的程序,程序实现一般的文字聊天功能,可作为某局域网的交流工具

1.4定义

1.3.1专业术语介绍:

SQL语言:SQL全称是“结构化查询语言(Structured Query Language)”,SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。

对象:object是一些相关的变量和方法的软件集。软件对象经常用于模仿现实世界中我们身边的一些对象。对象是理解面向对象技术的关键。

控件:控件实际上是子窗口,在应用程序与用户进行交互的过程中,控件是主要角色。

经济可行性---估计开发费用以及最终从开发成功的系统所获得的收入或利益,衡量比较支出的费用和收到的利益.

技术可行性--分析功能,性能以及限制条件,能否是一个技术上可实现的系统.

法律可行性--明确系统开发可能导致的责任,有无违法问题.

不同的方案--对系统开发的各种方案进行评价.

1.4.2相关技术与开发工具介绍

Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java 开发公司被要求所设计的 Java软件必须相互兼容。“Java 语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。

Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和静态的语言。Java 平台是基于 Java 语言的平台。这样的平台非常流行。因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。

Java是功能完善的通用程序设计语言,可以用来开发可靠的、要求严格的应用程序。MyEclipse企业级工作平台(MyEclipseEnterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate[1] 。

MyEclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse可以支持Java Servlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具

MySQL[1] 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用

了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。

[3] 浏览器-Web服务器的结构如图1-1所示

图1-1 浏览器-Web服务器结构

Web应用的执行过程如图1-2所示

图1-2 Web应用的执行过程

1.5 选题的意义

现在的通讯系统,除了我们生活中用于正常交流和联系以外,在现在的商业中也慢慢的兴起,运用到网上交易中,聊天室为客户与客户之间的沟通提供了一个有效交流平台,使得与客户之间的聊天没有时间和空间的距离感。在时间上,这边发一条信息到另外一边所用的时间只需要不到1秒的时间,几乎是立即得到

响应,比发送一份邮件的信息传递速度快了几百倍,非常的节省时间;在经济上,我们打电话是按时间分钟来计费的,如果是长途电话的话更贵,而我们的聊天室是通过互联网来接通的,价格十分便宜。当然我们不能否定邮件和电话,在用于不同的地方,它们又比聊天室好。基于B/S的聊天室是浏览器/服务的,与基于C/S架构的腾讯QQ等聊天软件相比起来,这种B/S[7]架构的聊天室,是不需要下载安装,直接是在浏览器上运行。因此,对于一个公司和企业来说,开发一个用于网站、娱乐或者论坛来交流的聊天室,其中包括群聊和私聊,成为了现在众多公司或集体的重要需求[14]。

这次开发的基于B/S架构的聊天室,是用现在流行JAVA[1]语言来开发的,用MyEclipse8.5作为开发平台,因为MyEclipse8.5开发B/S[6]架构运行在浏览器上的系统比较方便,并且用到的数据库是当前非常受欢迎的MySQL数据,作为后台数据库存储一些信息,建立一些表格。现在的随着WEB技术不断加强,B/S架构的设计模式开始流行起来,因为B/S架构的是网页版的,作为客户端只需要在浏览器上操作,没有下载安装客户端的说法。B/S模式将实现系统核心功能的代码全部都放着到服务器上,只有该系统的服务器够强大就可以无限的运行,如果客户端崩溃,也只是在浏览器上而已,只需要重新打开一个页面就可以了,从某种一定程度上,这个系统只需要开发一个强大的服务器,从而简化了系统的开发和维护。基于B/S架构的聊天室系统,与那些C/S[8]模式聊天室相比较,最大的优点:只要你有浏览器,就可以随时随地进行聊天,而不需要下载安装客户端,从而实现了客户端零安装、零维护的需求,提高了其中的效率[6]。

1.6参考资料

1.软件工程开发报告模板标准。GB-8567--88

2.《程序设计教程与实训》

3.《软件工程导论》(第5版)清华大学出版社张海藩编著

2可行性研究的前提

开发环境

随着众多软件的推广和应用,系统的开发环境对于大多数软件已经不是那么重要,然而现阶段大多数用户所用的系统环境基本上是一样的,因此我们还是必须在通用性的基础上考虑到大多数用户的系统开发环境。本聊天室系统由JSP 技术与MySQL数据库相结合基于B/S模式开发完成,以Struts2框架作为主要的技术框架,以MyEclipse8.5作为开发工具,以apache-tomcat-6.0.28做为服务

器。本聊天室系统的主要有普通用户和管理员两个角色,普通用户主要有注册登录、找回密码、群聊私聊、字体设置、背景颜色设置、在线音乐试听、退出这几个功能;管理员的主要功能有登录、在线用户管理、用户资料管理、过滤字段管理、聊天记录管理、音乐管理。

2.1要求

a . 网络聊天室功能:

系统功能需求根据用户对象的不同分为普通会员功能的需求和管理员对功能的需求两部分。

普通会员对功能的需求:

新用户注册

取回密码

在线发送消息

修改个人基本信息

离开聊天室

管理员对功能的需求:

用户管理

浏览所有用户信息

查找用户

用户权限分配

删除不合法用户

踢人

b. 网络聊天室软件的性能:

开发该软件的基本要求与功能是实现用户信息数据包括与用户有关的数据的管理与操作处理,基于MySQL数据库系统的数据管理使该软件有更优异的性能.软件的基本数据流动为用户数据的输入,用户信息,用户地址,用户的留言,以及有关用户提出的对其它用户的信息等等的查询要求所产生的数据输出.数据的输入与输出处理流程都依靠数据库的支持.数据的安全基本保证MySQL的安全性能比较令人满意,该软件设计中保持与其他一些数据库的基本兼容.

c. 输出:用户基本信息和发言各种处理的结果表格文档形式。

d. 输入:用户根据自身需要,或者评论网络最新最热门话题展开讨论。

e. 处理流程和数据流程图用图表的方式表示出最基本的数据流程和处理流程,并辅之以叙述.

f. 安全保密方面的要求:

对该软件系统设置不同级别的访问权限,通过对不同权限的管理,实现对用户的管理的安全性与保密方面的要求.

g. 完成期限 2015年11月15日到 2015年12月11日

2.2目标

该软件的设计目标必须尽量达到人力与设备费用的节省,并且使软件处理数据的速度提高,软件的整个设计过程必须通过生产能力的提高,人员工作效率的提高等等使软件开发成本最小化.实现保证软件质量的前提下的资金投入最小化.

2.3条件、假定和限制

a.本网络聊天室建议运行寿命为: 5-10年

b.进行系统方案比较的时间: 1周

c.经费投资方面的来源和限制用户

d.法律政策方面的限制:

1.严禁违反宪法确定的基本原则。

2.严禁危害国家安全,泄露国家秘密,颠覆国家政权,破坏国家统一。

3.严禁损害国家荣誉和利益。

4.严禁传播发布会妨害第三方权益的文件或者信息,包括但不限于:病

毒代码,黑客程序,软件破解注册信息.

5.严禁抄袭剽窃他人作品

e.硬件软件运行环境和开发环境方面的条件和限制

MyEclipse开发环境 Jsp

系统投入使用的最晚时间: 2015-12-11

2.4 技术可行性评价

就目前使用的开发技术来说建议系统的功能目标应该能够达到;利用现有的技术在规定的期限内开发工作基本能够完成

3.对现有系统的分析

3.1处理流程和数据流程

建议本系统的研究主要集中在用户之间的消息的发送与接收是每个公司都会遇到的问题,大多数公司使用的是人员流动方式,使公司的管理困难重重。如果采用一套软件,由数据库来记录这些信息,则大大的方便了企业内部人员沟通,

方便员工及时的了解公司的动态,与其他功能模块联机操作使企业的日常管理步入了科学系统管理的轨道上。

现有系统的数据处理与流程基本为用户数据的录入与查询,管理员删除修改等操作。流程图可表示如下:

3.2工作负荷系统工作流

由于数据量越来越大,现有的系统已明显不能适应目前的庞大数据量,系统工作负荷过大。

3.3费用开支

由于现有系统的工作负荷严重超载,在现有系统上投入的人力,设备,空间,材料,等等与其他的一系列支持性服务越来越大,导致开发费用支出巨大,严重影响系统的可用性,急需改进。

3.4人员

鉴于原有系统的技术性含量比较低,故不需要多少高技术人员的操作,只是由于数据量的日益扩大,所需要的操作人员数量不断增大。这一点已不再适应目前信息化时代的步伐。

设备的科技含量也比较低,没有达到大量的计算机普及程度。

3.6局限性

经过严谨的分析,可知原有的系统存在很大的局限性,比如技术的过于陈旧,人员工作负荷大,系统维护等方面存在很多的局限性。

4.进行可行性研究的方法

实行软件的可行性研究方法主要有:成本效益分析,对估算问题的看法,软件的作用范围,软件的成本估算,速度安排等。具体将在下面叙述。

4所建议的系统

4.1对所建议系统的说明

网络聊天室工作主要是用户的聊天功能,包括数据输入、修改、删除、追加、查询、统计和打印报表等功能,要能高效、准确地完成这些功能,并要达到界面美观友好、使用方便。对网络聊天室实现要求以及如何得到满足:

1.对用户基本信息文件的存储要求采用PB+后台数据库技术,实现对

文件的输入以及保存.

2.对用户搜索的功能要求, 可以通过在数据库设置关键字,并通过关

键字来实现对基本信息的各种搜索功能.

3.输入输出要求:

4.安全方面要求通过对软件登陆用户设置不同的管理级别来实现。

4.2处理流程和数据流程

下面列出主要事务的数据流图:

增删评论

回复留言

4.3改进之处

很明显,在以上几点中已可以看出新系统的性能与功能上与现有系统的差别,首先新系统克服了原来系统的资金投入大,人员设备技术含量低,系统工作负担重等缺点。而且加入了对数据的安全性保护的功能,使原有系统在可用性与稳健性方面有了很大的进步。

4.4影响

采用建议系统与现有系统的差别在上面已所过,在此从不同方面具体说一下:

(1).设备;

(2).现有软件;

(3).用户;建议系统使用的新技术是完全基于原有的系统上的,故用户

不必考虑新系统带来的人员培训等等。

(4).经费支出;建议系统是为了改善原有系统在经费支出过高的缺点

的,所以新系统一经使用在经费支出方面一定会得到很好的改善,用户在使用了新系统后只需要花一定资金购买一部分计算机与软件就能实现自动化。

4.4.1对设备的影响

采用建议系统后,改进了原有系统的性能所以对设备要求自然更高,建议系统使用了最先进的技术使设备也必须跟着升级。

4.4.2对软件的影响

由于建议系统采用了先进的数据库技术以及一系列高技术含量软件,部分用户可能无法使用。

4.4.3对用户单位机构的影响

要求用户单位操作人员熟悉软件运行的基本环境Windows操作系统。

4.4.4对系统运行过程的影响

说明所建议系统对运行过程的影响,如:

a.用户的操作规程;

b.管理员对服务器的操作规程;

c.服务器与用户之间的关系;

d.源数据的处理;

e.数据进入系统的过程;

f. 对数据保存的要求,对数据存储、恢复的处理;由用户提出输出请

求,文档管理系统响应请求,由打印机输出

f.输出报告的处理过程、存储媒体和调度方法;

g.系统失效的后果及恢复的处理办法。

4.4.5对开发的影响

说明对开发的影响,如:

a.为了支持所建议系统的开发,用户需进行的工作;

b.为了建立一个数据库所要求的数据资源;

c.为了开发和测验所建议系统而需要的计算机资源;

d.所涉及的保密与安全问题。

4.4.6对地点和设施的影响

在学校建立一个计算机中心,实施人员限制,无尘恒温管理,以放置运行该系统的后台服务器.

4.4.7对经费开支的影响

建议系统是为了改善原有系统在经费支出过高的缺点的,所以新系统一经使用在经费支出方面一定会得到很好的改善,用户在使用了新系统后只需要花一定资金购买一部分计算机与软件就能实现自动化。

4.5局限性

数据的庞大的限制, 不允许大容量数据录入数据库和保存.产生原因:这些问题是由于采用的后台数据库SQL sever的局限性所致.

4.6技术条件方面的可行性

以现有的技术和开发人员的数量和质量条件下,可在规定期限内完成该系统的开发.

5投资及效益分析

经济可行性分析中最重要的内容之一是成本--效益分析。对于一个基于计算机系统的研制项目要在经济方面评价其是否合理,成本--效益分析要估计出研制开发的花费并与收益(包括有形的可以用货币计数的及无形的利益)衡量比较。

5.1支出

就目前使用的开发技术来说建议系统的功能目标应该能够达到;利用现有的技术在规定的期限内开发工作基本能够完成。基本支出为2.5万。

5.1.1基本建设投资

a.房屋和设施 2.5万

b.环境保护设备 0

c.安全与保密设备: 0

d.数据库管理软件 : MySQL

5.1.2其他一次性支出

a.研究(需求的研究和设计的研究)费用: 0

b.数据库的建立: 0

c.检查费用和技术管理性费用: 0

d.培训费用.旅差费用开发人员所需要的一次性支出 1000元

5.1.3非一次性支出

列出在系统生命期内按月支出和维护费用:

a.设备的维护费用: 100元

b.软件的维护费用: 100元

c.人员的工资,奖金: 0

d.房屋空间的使用开支: 电费 50元

e.公共设施方面的开支: 100元

f.保密安全方面的开支: 网络杀毒软件0

g.其他经常性的支出: 100元

5.2收益

对于所选择的方案,说明能够带来的收益,这里所说的收益,表现为开支费用的减少或避免、差错的减少、灵活性的增加、动作速度的提高和管理计划方面的改进等。

5.2.1一次性收益

a.开支缩减,运行效益 1000元

b.应用系统价值的增值而引起的收益: 500元

c.其他如多余设备出售回收的收入 5000元

6.所建议系统的技术可行性分析

6.1 技术背景

根据客户提出的系统功能、性能及实现系统的各项约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术较为成熟,硬件软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件可完全达到该系统的功能目标。同时,考虑给予的开发期限也较为充裕,预计系统可以在规定期限内完成开发。

6.2拟用技术

技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软硬件能否满足开发者的需要等。该管理系统采用了当前新兴的Browser/Server模式进行开发。三层的Browser/Server体系结构具有许多传统的C/S体系结构不具备的有限,而且又紧密的结合了Internet/Intranet技术,是技术发展的大势所趋,它把应用系统带入了一个崭新的发展时代。数据库服务器选用MySQL数据库,它能够处理大量数据,同时保持数据的完整性并提高许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟克星。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。

6.2.1 B/S结构的简介

在传统的两层的C/S结构中,随着技术慢慢的发展出现了它的局限性,C/S 结构模式比较适合于那种系统规模比较小、用户也比较少、而且数据库还是单一的情况下,并且运行的网络环境必须是安全的和快速 (例如局域网 )。由于网络技术的发展之快,所运行的应用系统的规模在慢慢的扩大 ,其中的复杂性越来越高,在现在多用户、多数据库、多接口的系统中,并且网络环境下也是非安全的(例如:Internet)的网络环境中,传统的两层C/S结构的应用模型无法满足现状,跟不上时代步伐,而且这种模式是单一的服务器,主要以局域网为中心的 ,因此

想要把传统的模式扩展至大型企业的广域网或强大的Intranet中是不可能的,因此B/S体系结构三层客户/服务器模式随之兴起,成为当今最受欢迎的一种体系结构[8]。

三层客户/服务器模式是称之为B/S体系结构,是在以前传统两层的C/S结构模式的集成上,增加了一级成为了现在流行的三层客户/服务器模式。B/S体系结构在逻辑上将应用功能分为3层,分别是显示层、业务层、数据层。客户显示层是服务有客户端的,为客户的图形界面功能提供相对应的应用服务的,从而帮助客户迅速快捷的定位于应用服务。业务逻辑层是在显示层和数据层之间,是为企业实现该企业的业务逻辑提,专门的设计供的一个明确有效的层次,具有一定的逻辑性,在这个层次中,封装了与系统相关联的应用模型,同时把显示层和数据库代码部分的数据层区分开来数据层是三层模式中最底层的结构,这个层的主要目的是用来定义、维护、访问和更新数据,简单的说,就是管理数据库的,

图1 B/S三层架构示意图

6.2.2 MySQL简介

MySQL数据库是一个精巧的SQL数据库管理系统,这个数据库相对其他那些数据库来说,是非常小的。MySQL数据库很容易安装,它是在DOC命令的窗口运行的,但是它是具有强大的数据开发和维护功能、源代码开发的关系型数据库管理系统,还有就是这个数据库管理系统具有非常强灵活性和丰富的应用编程接口以及精巧的系统结构性。同时运用起来不占什么内存,还有他它快速,健壮和易用的特性,同时所用到经济成本也是非常的地,所以现在那些小型的企业的数据库基本上都采用这种数据库管理系统,其中的主要原因上面以及介绍了。所以在现在的那些小型的项目中,基本都会选择这种数据。SQL是一种标准化的语言,它不仅在MySQL数据库能运行还能在SQL Server中运行,所以MySQL数据库的SQL语言是可以在其他数据中使用。同时MySQL还能够足够快和灵活存储记录文件和图像等属性,可见这个数据库得功能之强大[11]。

MySQL数据库软件有几个版本,分别是标准版、企业版和集群版3个版本。MySQL数据库的主要特点是体积小、速度快和成本低3个特点,其中在成本低MySQL数据库优势下,它的局限性已经不是什么问题了,而且它能满足现在的那些中小型的系统或者网站,所以,使得一般中小型网站的开发都会选择MySQL 作为网站数据库。同时MySQL数据库相比其他的数据而言,在相同的运行环境中,可能维护起来会比较的容易些,所以在数据维护方面的,所需要的人力和财力会减少很多,减少了企业的开支[16]。6社会因素方面的可行性

该项目为独立开发,在技术上没有使用任何现有的软件与方法。所以在法律方面不会存在侵犯专利权、侵犯版权等问题,完全按照合同规定的责任履行。

7.社会法律方面的可行性

7.1 社会背景

网上聊天系统是为人们进行交流和联系提供一个平台。利用现代网络资源和技术优势,通过提供完善的网上聊天系统的管理,以达到人与人之间的信息交流个沟通的目的,并以此加快现代社会的信息化步伐,为时代的进步增添信息特色!

近年来计算机技术的快速发展,特别是计算机网络的发展越来越深刻的改变了人们生活的方方面面。各种在线服务系统,更是深刻的影响了人们的联系方式,使人们可以随时随地的相互联系。网络聊天系统因此就应运而生。网络聊天系统就是通过提供完善的聊天服务和规范的管理,方便人们之间的联系,与普通的联系方式相比,网络聊天系统更具有人文性发展前途。

目前已有很多成功开发聊天软件的先例,同时社会也需要更优秀的网上聊天系统为人们提供交流平台。

7.2 法律可行性分析

聊天软件开发和运行与国家的政策法规不存在任何冲突和抵触之处。但最近网络发展出现了一些新情况。

第一个方面涉及版权合同。根据我国版权法的规定,对作品的使用,使用者一般应当首先取得作者同意或者与作者签订合同,同时还需要向作者支付报酬。在一般情况下,向作者或版权权利人取得授权是使用作品的前提条件。

第二个方面从网络发展和现实情况来分析。网络大体分两大类,一类是网络内容提供商(ICP),另一类是网络服务提供商(ISP)。ISP就是只提供一个平台,作者可以自由投稿,读者可以上来阅览。这样的网站对内容不负责,不用去购买内容,不用去签约,网站既不收费,也不付费,这样对读者也很方便,实践中受到广大读者的欢迎。ICP是提供网络内容服务的。ICP不满足仅有一个平台,它

要有内容,要去找作者或者版权权利人去签约来丰富其提供的内容。

法律对ICP和ISP有不同的规定。ICP,也就是网络内容提供商,他承担的责任要相对多一些,比如说他要对所提供的内容出具合法授权的证明,没有合法授权,把别人的有版权作品拿到自己网上经营就是侵权,就是盗版。对此,国家有相关规定。

对于只提供信息交换平台的ISP,实际上法律给予它一定的优惠和免责。也就是说,它只承担停止上载的责任。当作者发现未经自己许可的作品上网,或者发现有人冒名把他的作品上载到网上,他可以在提供必要的相关证明的情况下,要求ISP把相关作品撤销。ISP只承担这样的责任。如果ISP在接到警告以后,明知这是侵权作品,作者也提供了必要的身份证明和权利证明等相关材料,还不撤销,这时就有可能承担相应的法律责任。

我国的相关法律法规规定,坚决打击各种盗版,侵权行为,及时有效的保护著作者的合法权利。

1.严禁违反宪法确定的基本原则,

2.严禁危害国家安全,泄露国家秘密,颠覆国家政权,破坏国家统一.

3.严禁损害国家荣誉和利益

4.严禁传播发布会妨害第三方权益的文件或者信息,包括但不限于:病毒代码,黑客程序,软件破解注册信息.

5.严禁抄袭剽窃他人作品

6.本软件为湖北理工学院计算机学院网络工程(1)班第八组所有,未经作者允许,非法传播、复制,违者追究法律责任,后果自负。

7.3 社会意义

网上聊天系统在合法合理的环境平台中为人们提供及时有效的通信,有助于增强人与人之间的互信和社会的和谐发展,也是现代社会快速发展必不可少的工具。

7.4使用方面的可行性

从用户单位学校的行政管理、工作制度等方面来看,能够使用该软件系统。

从用户单位的工作人员的素质来看,需要经过培训才能满足使用该软件系统的要求等等,都是要考虑的。

8结论

经过一系列的各个不同方面的可行性分析,分析员和用户及使用部门的负责人对需要解决的问题取得基本的一致看法,开发小组的开发方案的到批准,使用部门负责人同意开发工程继续进行下去。

社会、技术及经济发展的各种因素表明,建立一个网上聊天系统式事在必行。而鉴于现在市场上各种聊天软件竞争激烈的情况,可以推出聊天软件的附加服务以提高用户的粘斩性,比如提供更加小众的群服务等。

综上所述,本系统开发目标已明确,通过经济技术和社会等方面的可行性分析,可以确定本系统的开发完全必要,而且是可行的,可以立项开发。

JAVA代码编写一简单网络聊天程序

要求:聊天室服务器、聊天室客户端;客户端之间可以聊天。 因为我是初级选手,想借此程序分析学习java,所以代码最好多一点注释... 分数有限,望大家不吝赐教!!问题补充: 需要图形用户界面哦,最好用swing组件 服务器端:采用多线程,可以向客户广播:当前聊天室人数,客户名称列表,客户进入离开提示; 客户端:可以设定昵称,性别,客户间可以私聊 服务器端: import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; import https://www.doczj.com/doc/d012502961.html,.*; public class Server extends JFrame implements ActionListener{ JPanel contentPane; JLabel jLabel2 = new JLabel(); JTextField jTextField2 = new JTextField("4700"); JButton jButton1 = new JButton(); JLabel jLabel3 = new JLabel(); JTextField jTextField3 = new JTextField(); JButton jButton2 = new JButton(); JScrollPane jScrollPane1 = new JScrollPane(); JTextArea jTextArea1 = new JTextArea(); ServerSocket server = null; Socket socket = null;BufferedReader instr =null;PrintWriter os=null ; //Construct the frame public Server() { jbInit(); } class MyThread extends Thread{//该线程负责接受数据 public void run(){ try{ while(true){ this.sleep(100); instr= new BufferedReader(new InputStreamReader(socket.getInputStream())); if(instr.ready()){ //检查是否有数据 jTextArea1.append("客户端: "+instr.readLine()+"\n"); } } }catch(Exception ex){} }

毕业设计-聊天室的设计与实现

编号: 毕业论文 题目:聊天室的设计与实现 院(系): 专业:计算机及应用 学生姓名:唐靖琳 学号: 030111301444 指导教师:李志远 职称:教授 题目类型:理论研究实验研究工程设计工程技术研究软件开发 2012年4月15日

随着Internet的普及,很多人已经不满足于仅仅上网冲浪,而希望能参与其中的开发与研究。怎样做好网页便是人们所渴望的事情。想做好一个网页就要选好工具,我的课题是聊天室的设计与制作。因此,我这里选择的开发软件是Macromedia Dreamweaver 8。Macromedia Dreamweaver 8目前作为最主流的ASP开发工具,它可以将前台界面设计和后天程序设计充分结合,包括asp等。而微软的asp和目前推广的https://www.doczj.com/doc/d012502961.html,,是广大网页后台设计师的首选,其应在IIS服务器环境中运行并通过调用ACCESS数据库来实现。 在线聊天室是一种十分普及的动态交互系统,是一种比较直观的且容易接受的交流方式,特别对于刚刚接触的新网民,在线聊天室相对于其他网络交流方式来说有很多不可比拟的优势,比如操作简单,界面简单,信息显示十分直观,十分适合新手;信息的及时传递无延迟,用户可以十分自如地和他人交流而无须等待。这些优点也是聊天室出现这么长时间以来的仍然被广泛使用的原因。至今在线聊天室仍是被很多网站作为吸引网民的利器. 本人制作的是在线聊天室的功能实现,实现用户的登陆和注册,用户在线聊天功能,私聊功能及管理员管理用户功能。聊天的界面有框架构成的。 建设此聊天室,主要目的是为了能够和相同爱好的朋友提供一个实时交流的平台,而不会因为距离而疏远了。 关键词:聊天室;ASP IIS服务器;ACCESS数据库;Macromedia Dreamweaver 8

网络聊天室系统设计与实现

科研训练 网络聊天室系统设计与实现Design and implementation of network chat room system 学生姓名XXX 专业软件工程 学号1305XXXXX 指导教师李XX 祝XX 学院计算机科学技术学院 二〇一六年六月

目录

一、引言 随着网络的大幅度普及,以及网络技术快速发展,人们通过网络进行交流的方式发生着巨大的变化,人们不再拘泥于移动电话的通话模式,越来越多的人通过网络聊天工具进行交流,网络聊天室便是非常典型的聊天工具之一。聊天室系统的即时交流方式满足了网络中人们同时与多人进行聊天交流的需要,使得较多的人在同一个聊天页面进行交流变得方便,简单。 本设计所完成的网络聊天室具有常用聊天室的所有功能,包括使用账号登录聊天室、注册账号、显示在线用户列表、显示系统消息、两人之间进行私密聊天、消息提醒、发送表情、修改发送文字颜色;同时,为了管理聊天室中的用户使用语言的文明,赋予管理员踢出使用不文明语言的用户功能,显示全部聊天信息。该系统采用B/S(浏览器/服务器)结构进行开发,参考网络中正在使用的大型聊天室的架构、分析聊天室可实现功能,结合本次设计的相关要求,进行开发设计并写出需求分析说明书。 该系统具体开发环境:使用专业版作为服务器运行平台,服务器开发语言使用Java语言,前台使用Jsp技术、JavaScript、Jquery语言,系统框架使用 Struts2+Hibernate+Spring框架,后台数据库使用MySql数据库。 二、需求分析 该系统采用B/S模式设计,开发目的主要是提供一个基于网络的安全文明的供多人聊天社交平台。 系统运行环境需求 该系统是在windows 专业版操作系统下,搭建的运行平台,使用myEclipse作为开发工具,mySql作为数据库,Java语言作为系统后台开发语言。 JSP技术作为前台开发语言,其中使用JavaScript以及Jquery作为脚本语言。工程框架使用Struts+Spring+Hibernate框架。 (1)服务器配置: (2)客户端要求配置: 谷歌浏览器、狐火浏览器以及IE浏览器以上版本。 模块功能分析 (一)用户注册登录模块 新用户在使用该聊天室系统时,必须先进行注册新用户操作,后台将注册信息添加到数据库中,用于胡勇登录验证;在注册成功之后再进行登录; 当用户名与密码匹配成功,即可进入聊天室系统。 (二)在线用户显示模块 当用户登录进入系统后,该页面实现在线用户的统计,并将在线用户依次显示出来。如果当前用户属于管理员角色,则在普通用户角色的右边显示“踢下线”链接,如果当前用户属于普通用户角色,则正常显示在线用户名。 (三)用户交流聊天模块 该模块主要负责发送信息内容,选择聊天对象;除此之外,可以修改聊天内容的字体颜色以及发送的表情。发言的颜色和发言的表情通过下拉式组合框实现。发言内容书写完毕后。通过点击“发送”按钮,发送聊天内容。 (四)聊天信息显示模块 当用户选择聊天对象并发送聊天内容后,显示出当前发送的内容以及之前的历史聊天内容,聊天的内容只有对话的两人可见,其他人不可见。当用户退出系统后,再次登录进入聊天室时,两人的对话记录依然存在。

计算机网络TCP聊天室实验报告

计算机网络原理 实验报告书 姓名:XXX 班级:XXXXXX 学号:XXXXXXXXXX XXXXXXXXXXXX 二0一一年五月

socket编程 一、实验目的 本次实验的目的是通过利用Socket编写简单的客户/服务器程序,了解TCP/IP网络的基本通信原理和编程方法,初步掌握TCP/IP网络的传输层上的编程接口(Windows Sockets API),学会利用这些接口来编写简单的网络通信软件。 二、实验内容 利用socket编写简单的客户/服务器程序,比如聊天室、文件传输等。 三、实验步骤 思路分析 ?将服务器与客户端分两部分实现,采用多线程实现多个客户端与服务器端连接 ?客户端建立一个Socket与服务器端连接,成功后通过这个Socket来发送和接 收数据就可以了。 ?服务器端通过创建一个Socket的Arraylist数组,与指定的本地端口绑定,就 可以在端口进行侦听。如果有客户端连接请求,则在数组中选择一个空 Socket,将客户端地址赋给这个Socket。然后登录成功的客户就可以在服务 器上聊天了。 代码实现 p ackage TCP_chat_room.gui; i mport java.io.IOException; p ublic class ClientApp { public static void main(String[] args) { /** * javax.swing.UIManager$LookAndFeelInfo[Metal javax.swing.plaf.metal.MetalLookAndFeel]

C+++网络聊天室设计报告和源程序

目录 1.需求分析 (2) 2.相关知识............................................... - 3 -2.1W INSOCK介绍 (3) 2.2MFC类CA SYNCSOCKET和CS OCKET (3) 2.3利用CS OCKET进行有连接的通信 (4) 3.详细设计................................... 错误!未定义书签。 3.1客户端的实现 (4) 3.2服务端的实现 (8) 4.程序运行结果.......................................... - 13 -4.1服务器端 .. (13) 4.2客户端 (13) 5.参考文献 ................................................................................................................... 错误!未定义书签。

1.需求分析 当前是数字信息时代,网络时代,任何一种编辑工具都不能忽视在网络上的应用,并且随着Internet 的普及和宽带技术的成熟,越来越多的用户进入网络世界中享用浏览新闻、查询信息、发送邮件、在线观看电影等服务,享受网络带来的便利和办公的高效,与此同时一个新型的Web应用程序为网民之间提供了一个实时通信的功能和场所,这就是聊天室。 在网络早期就开始盛行,不论是BBS,IRC 都有类似网上聊天室的机制。聊天室为网友提供了实时性对话的渠道,是网络上极为流行的一项服务。 聊天室适用于网上会议或闲聊的一些场合。聊天室为网友提供了较好的交友环境,网友之间相互以文字交谈,在形式上有点类似笔友的性质,却大大节省了书信往返的时间,这也是网上交友之所以如此热门的原因。 聊天室的设计目标 本课题是建立聊天通信模型,设计一个聊天室软件,包括服务器端和客户端,主要功能为: 服务器端功能: 1、初始化socket, 创建服务器端。 2、维护一个链表,保存所有用户的IP地址、端口信息。 3、接受用户传送来的聊天信息,然后向链表中的所用用户转发。 4、接受用户传送来的连接判断命令,并向用户发出响应命令。 客户端功能: 客户端界面上的两个文本框,一个用于显示接受的聊天信息,一个用来接受用户输入的聊天信息。当按下“发送”按钮时将信息发送给服务器。 通过本课题的毕业设计,可以比较深入的了解和掌握WINSOCK控件基本属性、方法和事件,理解网络聊天通信的概念,输控制协议(TCP)进行数据交流,初步掌握网络聊天通信程序的设计方法。并能巩固和扩展大学期间的学习内容,进行项目的设计开发训练,更好的适应社会的需求。

Windows C语言构建网络聊天室

Windows C语言构建网络聊天室 利用C语言编写Windows应用程序有两种方式:一种是Windows C编程方式,另一种是Visual C++编程方式。在一般情况下,Visual C++编程方式编写的程序源代码量小、开发时的工作量小、工作难度也较小,但编译后的代码量较大,运行速度略低;而Windows C编程方式编写的程序源代码量虽然较大,但可执行代码效率高。随着技术的进步,Visual C++编程方式已被广泛采用,但象网络编程等一些对速度要求高、对硬件操作较多的程序,大多数还是用Windows C编程方式开发的。另外,学习Windows C 程序设计,还有助于更深入地了解Windows的内幕和Windows API。 基本的网络编程都是建立在Winsock基础上的。Winsock是90年代初,为了方便网络编程,由Microsoft联合了其他几家公司共同制定的一套WINDOWS下的网络编程接口,它是通过C语言的动态链接库方式提供给用户及软件开发者的,主要由winsock.h头文件和动态链接库winsock.dll组成,目前有两个版本:Winsock1.1和Winsock2.0。 作为网络编程接口,Winsock屏蔽了网络底层的复杂的协议和数据结构,使得编程人员对网络的操作变得非常简单,因此,在Win32平台上,访问众多的基层网络协议,Winsock是首选接口。 用Winsock构建一个网络聊天室,有两种基本的方式:数据报方式和流方式。 一、面向无连接的数据报方式 数据报方式又称无连接方式,对应的是UDP(User Datagram Protocol)协议。这种方式不提供数据无错保证,数据可能丢失或重复并且接收顺序混乱,后发出的报文可能会先收到,并且报文的长度是有限制的;不过,由于取消了重发校验机制,能够达到较高的通信速率,可以用于对数据可靠性要求不高的通信,如实时的语音、图像传送和广播消息等。 和C语言一样,函数是Windows C编程的最基本的单位。不过,Windows C主要使用API函数,而网络编程则主要使用Winsock提供的API函数。数据方式构建网络聊天室主要使用了以下几个函数:1.WSAStartup():初始化。 【函数原型】 int PASCAL FAR WSAStartup(WORD wV ersionRequired, LPWSADATA lpWSAData); 【使用说明】 每一个使用winsock的应用程序,都必须进行WSAStart函数调用,并且只有在调用成功之后才能使用其它的winsock网络操作函数。 返回值:调用成功返回0;否则,返回出错信息。 WversionRequired<输入>:表示欲使用的Winsock版本,这是一个WORD类型的整数,它的高位字节定义的是次版本号,低位字节定义的是主版本号。 LpWSAData<输出>:是一个指向WSADATA资料的指针。这个资料我们一般不使用。2.Socket():创建一个Socket。 【函数原型】 SOCKET socket(int af,int type,int proctocol); 【使用说明】 Winsock网络通信的第一步通常就是调用这个函数。所有的通信在建立之前都有要创建一个 Socket。该函数的功能与文件操作中的fopen()类似,返回值是由Winsock定义的一种数据类型 SOCKET,它实际是一个整型数据,是Socket创建成功时,Windows分配给程序的Socket编号,后面调用传输函数时,可以把它像文件指针样引用。如果Socket建立失败,返回值 WIV ALID_SOCKET。 Af<输入>:指address family(地址族),一般都填AF_INET,表示是在Internet上的Socket; Type<输入>::是Socket的类型,当采用流连接方式时,用SOCK_STREAM;采用数据报文方式时,用SOCK_DGRAM。

在线聊天系统毕业设计论文 (1)

摘要 随着Internet技术的飞速发展,网络已经成为人们生活中不可缺少的一部分,通过聊天室在线聊天已成为网络上人与人之间沟通、交流和联系的一种方式。 为此,越来越多的网站开始提供在线聊天的功能。与此同时,聊天室也以其方便、快捷、低成本等优势受到众多企业的青睐,很多企业的网站中也加入了聊天室模块,以达到增进企业与消费者之间、消费者与消费者之间相互交流的目的。 本文是软件工程在线聊天室系统的开发说明,重点运用软件工程知识对系统进行分析、设计实现和测试的思想的具体描述,其中包括软件生命周期的三个主要方面:软件定义(问题定义、可行性研究、需求分析)、软件开发(总体设计、详细设计、编码、测试)和运行维护。通过实际的运用软件工程知识处理问题,加强程序的规范性、清晰性、可靠性,并且使得程序易于维护。本软件使用JAVA进行编写,具有良好的兼容性且易于实现。聊天室操作简洁容易上手、结构简单、查找方便、实用性强。 关键字:网络、通信、套接字、连接

目录 序言 (3) 第一章 VisualC++及Socket套接字介绍 (5) 一 VisualC++ 介绍 (5) 二 Socket套接字介绍 (6) 第二章软件需求分析 (15) 一系统客户要求 (15) 二系统详细设计 (16) 三系统开发目标 (17) 四系统开发思路 (17) 五需求总结 (18) 第三章系统具体实现 (21) 一概要设计 (21) 二定义服务器端和客户端的通信结构及含义 (22) 三服务器端的实现流图 (25) 四客户端的实现流图 (28) 第四章系统测试 (30) 第五章系统运行和维护 (32) 第六章结束语 (33) 参考文献 (34)

网络聊天室项目可行性实施报告

网络聊天室项目 1.1编写目的 计算机技术的快速发展,特别是计算机网络的发展,越来越深刻的改变了人们生活的方方面面。使得人们能以更低廉的价格,开发出更方便、更实用的网络工具。各种在线服务系统,更是深刻的影响了人们的联系和交流方式,使得人们可以自傲远隔千里之遥随时通讯。过去的种种陈旧的联系方式,已经不能满足现代生活的需要。网上聊天系统作为一种方便人们之间联系的使用系统便应运而生。网上聊天系统是人们进行交流和联系提供的一个平台。通过提供完善的网上聊天系统的管理,可以达到增进人与人之间的交流和沟通。 在网络世界中,聊天室(Chat Room)是一个最常见的服务,它最早起源于BBS站点,聊天室作为一个在漫漫长夜打发消遣时间的最佳软件,除了能够用于聊天消遣时间以外,还拥有语音聊天、视频聊天、共享图片、文件等功能。现在随着网络的发展,聊天室发展的速度已经非常迅速了,现在的聊天室技术,都已经运用到了“网络会议”上,现在有很多的会议在网上视频聊天会议[9]。 该网络聊天室项目可行性研究报告是对项目课题的全面通盘考虑,是项目分析员进行进一步工作的前提,是软件开发人员正确成功的开发项目的前提与基础.写软件项目可行性研究报告可以使软件开发团体尽可能早的估计研制课题的可行性,可以在定义阶段较早的认识到系统方案的缺陷,就可以少花时间和精力,也可以省成资金,并且避免了许多专业方面的困难.所以该软件项目可行性研究报告在整个开发过程中是非常重要的. 本报告的预期读者为项目管理人,教师,软件用户学生,软件开发工程师等。 1.2 项目概述 在Internet上,qq,MSN,飞信等网上软件,极大程度方便了各地友人之间的联系,也使世界一下子缩小了,不管你在哪里,只要你上了网,打开这些软件,就可以给你的朋友发信息。现在,企业,机关,学校都纷纷建立起自己的局域网。在局域网里,虽然可以通过文件共享的方式进行通讯,但单单使用这种方式,是不方便的。首先在局域网里的网上邻居,只能看到机器名,不清楚对方是谁,也不知道对方机器有什么资源可以共享,而且当局域网机器很多时,这种方式更加麻烦。 在市面上,聊天室的应用软件出现得比较早,比如说,Microsoft Chat,一个在界面及功能方面都已经非常完善的“聊天室”的应用软件,它是一套独立于浏览器之外的,即与浏览器无关的,需要下载客户端安装使用的套装软件,在使

JAVA聊天室毕业论文

江苏省徐州机电工程高等职业学校毕业设计 姓名:杨雪芳 学号: 01000076 系部:信息工程系 专业:软件技术 设计题目:聊天室(Java) 指导教师: SIDDHANT、韩伟 职称: 2012年07月

摘要 随着Internet技术的发展,人们的日常生活已经离不开网络。未来社会人们的生活和工作将越来越依赖于数字技术的发展,越来越数字化、网络化、电子化、虚拟化。电子商务也随着网络的发展日益和人们的生活贴近。Internet的发展历程以及目前的应用状况和发展趋势,可以充分地相信网络技术将极大的改变我们的生活和工作方式,甚至社会的价值观也会发生某种变化。 在网络飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。传统的信息交流工具,不能满足人们即时获取信息的要求。因此,网上聊天便成为人们的首选,而一个好的聊天工具是:操作简单、方便、人性化,节省系统资源。为了方便与人即时联系及数据汇报,特构建此聊天系统。 本论文通过Java的Socket实现了一个基于局域网和网络的聊天室程序的开发。本论文详细介绍其设计和实现过程。 关键词:聊天室;Java;客户机/服务器;Socket;

Abstract With the development of Internet technology, people's daily lives can not be separated from the network. Society, people living and working more and more dependent on the development of digital technology, more and more digital, networked, electronic, virtualization. E-commerce With the development of increasingly close to people's lives. The course of development of the Internet and the current application status and development trend, we can fully believe that network technology will dramatically change the way we live and work, and even social values may also occur a change. The rapid development of network, the Internet has become the quick access, publish, and an important channel for transmitting information, it play an important role in a person's political, economic, and other aspects of life. The traditional information-sharing tools can not meet the requirements of people instant access to information. Therefore, online chats will become the first choice of the people, and a good chat tools are: simple operation, convenient, user-friendly, saving system resources. In order to facilitate immediate contact and data reporting, special build this chat system. In this thesis, through the Java Socket development of a local area network and network-based chat program. This paper details the design and implementation process. Keywords:chat rooms; the Java; Client / Server;the Socket;

网络聊天室(CS)模式

Java课程设计报告 题目网络聊天室(C/S模式) 所在院系软件学院 学生姓名孙丕军专业机械+软件 班级R机械085 学号 0818030512 2009年7 月17日

第一章总体设计 1.1本系统的主要功能 本系统设计C/S模式的网络聊天室,即使用客户端的JAVA应用程序和服务器进行通信. 1.2系统包含的类及类之间的关系 本系统共包括12个java源文件。 如图1-1所示。

图1-1 类之间依赖的关系 2.2 java源文件及其功能 客户端: HELP.JA V A 该文件生成的类负责创建一个帮助对话框。当用户不知怎么使用时,可以从这获得帮助。用户可以用mouse点击菜单栏上的帮助(H)选项,也可以按下快捷键Ctrl+H 来显示帮助对话框。 USERCONF.JA V A 该文件生成的类负责用来设置用户昵称的。默认的为匆匆过客。可以通过点击工具栏上的用户设置,也可以点击菜单栏上的设置中的用户设置来弹出用户设置对话框。当提交时,按下保存时,若没有输入或输入的字符超过15字符时,均为无效输入。

CONNECTCONF.JA V A 该类负责生成一个连接对话框。让用户输入服务器的IP地址和要连接的端口号。以便与服务器连接。连接IP时,由于我们的服务器和客户端均在同一台机器上,所以IP可以是127.0.0.1。端口号必须是在0—65535之间的一个数。上面两者均为正确时,才算是连接设置是正确的。否则会弹出一个错误对话框。 CLIENTRECEIVE.JA V A 该类为客户端的消息收发类,单独把它作为一个类,是因为这样可以为每一个用户启动一个线程。避免在一个主线程中引起堵塞。在run 方法中包括了对服务器发来的消息的处理。 CHATCLIENT.JA V A(客户端主类) 该类为客户端的主类。与服务器进行通话时,需要启动这个文件。该类包括了一个复杂的GUI界面的设计。对菜单栏上的选项都设有快捷键。当所有工作都准备好了之后,点击登录。即可启动一个连接服务器的线程。与服务器进行会话。若有多个用户想要参与会话,可以启动多个CHATCLIENT。每一个用户将有一个自己的聊天界面。用户可以相互之间聊,也可以与某一个人进行私聊。若想换一个名字进行聊天,可以点击注销,然后重新设置用户名来聊天。 服务器端: HELP.JA V A 该类与客户端的HELP.JA V A类大致一样的。在显示的内容块有一点不同而已。 PORTCONF.JA V A 这个类是一个端口配置类,有服务器设置一个监听端口。让用户连接。但端口必须正确,也就是就端口应是在0—65535之间的一个数。且与用户连接时设置的端口必须一致。 NODE.JA V A 该类是用户链表的结点类,它把用户的名字,socket, ObjectOutputStream,ObjectOutStream.封装在一起。为后面使用用户链表做准备。 有利于后面工作的简单。 USERLINKLIST.JAVA 本类并没有使用JDK自带包中的数据结构类,而是自己将

聊天室设计报告

网 络 聊 天 系 统 设 计 报 告 组长:靳子豪 组员:凯强、许玉军、王明明 完成时间:2015年11月3日

一、可行性研究报告 可行性研究报告(ISO标准) 编者说明: 在立项时,应该对项目进行综合分析,探讨项目的经济、社会、技术可行性,从而为决策提供基础。该模板为ISO标准文档模板,其不仅适用于软件项目,对于其它的系统项目也适用。 1.引言 1.1 编写目的 该聊天室项目可行性研究报告是对项目课题的全面考虑,是项目分析员对下一步工作进行的前提,是软件开发人员正确成功开发项目的前提与基础。写可行性研究报告可以使软件开发团体尽可能早的估计研究课题的可行性,较早的认识到系统方案的缺陷,可以少花时间和精力,也可减少成本资金,避免专业性的问题。 1.2 背景 a. 待开发系统的名称:信息交流系统 b 用户:大众 c. 它基于web小浏览器的程序系统的设计与开发, 服务平台:appserv-win 开发语言:PHP 数据库:MY SQL 1.3 定义 技术可行性:分析功能,性能以及限制条件,能否是一个技术上可实现的系统 经济可行性:估计开发费用已及最终从开发成功的系统所获得的收入或利益,衡量比较支出的费用和收到的利益 1.4 参考资料 《软件工程导论》(第6版)清华大学海藩牟永敏编著 可行性研究的前提 2.1 要求 a、聊天室功能 用户的聊天功能,包括数据输入、修改、删除,并要达到界面美观又好、使用方便 b、软件的性能 开发该软件应具有的基本要求与功能是实现用户信息数据包括与用户有关的数据 的管理与操作处理,基于MY SQL的数据库的数据管理使该软件有更优异的性能,软件的基本数据流动为用户数据的输入,用户信息及数据的输出。 c、输出 用户基本信息和聊天容 d、输入 用户根据自身需要,发起聊天 e、安全方面的要求 设置管理员 2.2 目标 该软件的设计目标必须尽量达到人力与设备费用的节省,软件的整个设计过程必须通过生产能力的提高、人员工作效率的提高等等使软件开发成本最小化。 2.3 条件、假定和限制 a、本聊天室建议使用寿命为5-10年 b、法律方面的限制:(1)、严禁危害国家信息安全(2)、严禁损害国家荣誉和利益(3)、严禁传播不良信息(5)、严禁抄袭 2.4 进行可行性研究的方法 成本效益分析、对估算问题的看法、软件的作用围、软件的成本估算、速度安排

网络课程设计实验报告--QQ聊天实现

计算机网络课程设计报告 设计选题网络聊天室 姓名马继鸣 学号 0909090630 完成时间 2012-1-12 一、需求分析

聊天工具大多数由客户端程序和服务器程序外加服务器端,本程序采用客户机/服务器架构模式。通过Java提供的Socket类来连接客户机和服务器并使客户机和服务器之间相互通信,由于聊天是多点对多点的而Java提供的多线程功能。用多线程可完成多点对多点的聊天。 主要有两个应用程序,分别为服务器程序和客户端程序。服务器应用程序主要用于消息转发,以及向所有用户发送系统消息等;客户端应用程序主要用于客户聊天记录的显示和信息输入。采用Client/Server(C/S)体系结构,即客户机/服务器体系结构。聊天服务器专门用于监控用户状态和转发消息,客户端负责接收消息的用户序列和消息文本发送到服务器。该聊天系统实现群聊,用户登陆,退出聊天系统等功能。 二. 设计 1.设计思想: 课程设计中利用JAVA实现基于C/S模式的聊天程序。聊天室共分为服 务器端和客户端两部分,服务器端程序主要负责侦听客户发来的消息,客 户端登录到服务器端才可以实现正常的聊天功能。

2.功能设计 (1)服务器端的主要功能如下。 在特定端口上进行侦听,等待客户端连接。用户可以配置服务端的侦听端口,默认端口为10000. 当停止服务时,断开所有用户连接。 (2)客户端的主要功能如下。 连接到已经开启聊天服务的服务端。 当服务器端开启的话,用户可以随时登录与注销。

用户可以向所有人发送消息。 3.详细设计 聊天室服务器端设计 聊天室服务器中主要的功能文件的功能如下: MyButLis.java 主要用于添加事件侦听和动作处理,具体是服务器按钮中的“终止”“发送”的处理。 public class MyButLis implements ActionListener private MyServe server; private JTextField filed1; public void actionPerformed(ActionEvent e) MyChatSet.java 服务器的线程队列,运行的方法,新增一个用户,则增加一个线程,并可以返回应答消息,给其余用户发送上下线信息,发送聊天信息(群聊私聊虽然已写,但是不知为何没有实现),发送用户列表。关键在于除了线程之外,还定义了传输数据时的协议内容,如何分辨不同的信息,如聊天信息,登陆信息,上下线信息,并把信息完整准确的传递。 public static ArrayList servers=new ArrayList();//线程队列 public static void addThread(MyserThread th) //增加一个服务器线程对象 public static void sendReMess(String type,String state,String s,MyserThread myth)//返回应答信息 public static void SendOSMess(String type,String user)//其他用户上下线信息 public static void SendChatMess(String type,String sender,String reciver,String Mess)//聊天信息 public static void SendList//用户列表 MyCheckTool.java 保存用户的登陆信息,在其中建立一个码表,并且可以判断登陆信息是否合法。 //建立码表,用以保存用户信息 private static Map maps=new HashMap(); public static boolean CheckUser(MyUserInfo user)// 验证用户名

java编写的简单局域网聊天室(适合初学者).

import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.Frame; import java.awt.Panel; import java.awt.Point; import java.awt.TextArea; import java.awt.TextField; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.File; import java.io.FileWriter; import java.io.IOException; import https://www.doczj.com/doc/d012502961.html,.DatagramPacket; import https://www.doczj.com/doc/d012502961.html,.DatagramSocket; import https://www.doczj.com/doc/d012502961.html,.InetAddress; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public class GUI_Chat extends Frame { private static final long serialVersionUID = 1L; private TextArea viewTextArea = new TextArea(20, 1; private TextArea sendTextArea = new TextArea(; private TextField ipTextField = new TextField(20; private Button sendButton = new Button(" 发送" ; private Button clearButton = new Button(" 清屏" ; private Button logButton = new Button(" 记录" ; private Button shakeButton = new Button(" 震动" ; private Panel panel = new Panel(; private DatagramSocket socket ;

关于网络聊天室的开发报告报告

J a v a P r o g r a m m i n g 课程设计报告 设计题目:简单的网络聊天程序 系别:江淮学院 专业:计算机技术与科学 班级:计算机3061 姓名:周剑 学号:3062101103 起止日期:2008年12月29日~2009年1月4日指导教师:张永军、周泓、高尚兵、刘虎

课程设计中文摘要 随着大众化、小型化趋势的加剧,网络聊天在当今已经不算新鲜事物,聊天室可以更好的方便大家交流,请教或探讨问题,同时也能开阔视野。但大多数网络聊天都需要借助位于Internet的服务器,这就给那些具有大规模内部网络的用户造成了不便,出于安全等考虑,通常这些内部网络不能直接连接到Internet。我设计的聊天室,提供了类似于常见聊天室的功能,同时可以在局域网内部使用,只需稍加改进,便可以应用于架设企业内部的聊天室,方便员工之间的沟通。 本聊天室系统,主要利用DELPHI用于底层网络通信Socket组件,使用了多线程技术。 关键字:聊天,功能,socket

Foreign language curriculum design Abstract With the popularization of small and medium-sized trend intensifies, the network has been in today's chat is not new things, chat rooms can facilitate better communication, consult or to study the issue, but also to broaden our horizons. But most networks need to chat with Internet server is located, which for those with large-scale internal network users the inconvenience caused, for safety considerations, these internal network usually can not directly connect to the Internet. I designed the chat rooms, provides a similar function of common chat room, as well as local area network for internal use, just a little improvement, it can be applied to set up enterprises within the chat rooms to facilitate communication between employees. The chat room system, mainly for the use of DELPHI bottom Socket network communication components, the use of multi-threading technology. Keywords: chat, function, socket

Linux下的Socket网络编程:一个简易聊天室的实现-徐慧军

Linux下的Socket网络编程:一个简易聊天室的实现-徐慧军

高级程序设计与应用实践 报告 一个简易聊天室的实现 姓名:徐慧军 学号:2121134 专业:电子与通信工程 学院:信息科学与技术学院 任课教师:廖晓飞 2013年05月02日

Linux下的Socket网络编程: ——一个简易聊天室的实现一、socket介绍 socket接口是TCP/IP网络的API,socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP 网络编程,必须理解socket接口。 socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix 系统的输入和输出的话,就很容易了解socket了。网络的socket数据传输是一种特殊的I/O,socket也是一种文件描述符。socket也具有一个类似于打开文件的函数调用socket(),该函数返回一个整型的socket描述符,随后的连接建立、数据传输等操作都是通过该socket实现的。常用的socket类型有两种:流式socket (SOCK_STREAM)和数据报式socket(SOCK_DGRAM)。流式是一种面向连接的socket,针对于面向连接的TCP服务应用;数据报式socket是一种无连接的socket,对应于无连接的UDP服务应用。 二、Socket创建 socket函数原型为: #include #include int socket(int domain, int type, int protocol); 功能:调用成功,返回socket文件描述符;失败,返回-1,并设置errno 参数说明: domain指明所使用的协议族,通常为PF_INET,表示互联网协议族(TCP/IP 协议族; type参数指定socket的类型: SOCK_STREAM 提供有序、可靠、双向及基于连接的字节流

基于web的聊天室系统的设计与实现大学本科毕业论文

华北电力大学科技学院本科毕业设计(论文) 基于web的聊天室系统的设计与实现 摘要 随着信息流量的日益加大,计算机网络技术得到飞速发展,各类网站不断涌现出来。而最受青睐的应属具有动态效果、实施性质的相互交流的的网络平台,其页面的内容使用的不仅仅是标准的HTML代码。而是加入了各种“交互性”。将浏览器作为客户端界面,这将是今后WEB发展的大事所趋。JSP具有一次编写,多处运行、系统多平台支持、强大的可伸缩性、多样化和功能强大的开发工具支持、支持服务器端组件等优势,所以本文选用JSP作为网站前端开发语言。 本文主要对网上聊天室进行需求分析,包括用户登录、用户注册、聊天室、聊天记录、密码修改。在需求分析的基础上,对登录模块、注册模块、聊天室模块、聊天记录模块、数据库等进行了详细设计实现,最后对整个系统进行运行及测试。 该系统采用 Myeclipse,Mysql ,JSP作为开发工具。 关键词:WEB;JSP;聊天室;Mysql

摘要 (1) Abstract .................................... 错误!未定义书签。1绪论.. (1) 1.1课题背景和意义 (1) 1.2聊天室研究现状 (1) 1.3本文主要工作 (2) 2 系统关键技术 (3) 2.1 JSP技术 (3) 2.1.1 JSP简介 (3) 2.1.2 JSPWeb开发 (3) 2.1.3 JSP的特点 (4) 2.2 JDK (4) 2.2.1 JDK组成 (5) 2.2.2 JDK常用的包 (5) 2.2.3 JDK常用工具 (5) 2.3 Tomcat服务器 (6) 2.3.1 简介 (6) 2.3.2 Tomcat的功能 (6) 2.4 MySQL数据库体系 (7) 2.5 AJAX (8) 3 系统需求分析 (9) 3.1功能分析 (9) 3.2 性能分析 (10)

相关主题
文本预览
相关文档 最新文档