工作板的设计与实现学士学位论文.doc

上传人:教**** 文档编号:91626211 上传时间:2023-05-27 格式:DOC 页数:61 大小:648KB
返回 下载 相关 举报
工作板的设计与实现学士学位论文.doc_第1页
第1页 / 共61页
工作板的设计与实现学士学位论文.doc_第2页
第2页 / 共61页
点击查看更多>>
资源描述

《工作板的设计与实现学士学位论文.doc》由会员分享,可在线阅读,更多相关《工作板的设计与实现学士学位论文.doc(61页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、北京邮电大学毕业设计 工作板的设计与实现摘 要 在网络越来越发达的今天,人们对网络的依赖越来越多,越来越离不开网络,由此而产生的聊天工具越来越多,基于Java网络编程的强大功能,本次毕业设计使用Java编写一个工作板即基于局域网工作交流平台系统。本文详细介绍了工作板即基于局域网工作交流平台系统的开发和过程。本项目采用软件工程的方法,综合运用数据库技术、程序设计技术,以java为开发语言,以MyEclipse开发工具作为系统前台应用程序开发工具。此局域网工作交流平台采用客户端/服务器(C/S)模式和TCP连接并用多线程实现了不同的并行任务。在本设计中,通过人性化的界面设计使用起来更加方便功能合理

2、。最终实现了通信,给员工提供更方便的沟通方式,增强了企业的信息共享和沟通能力,提高员工日常工作效率,减少企业内部通讯费用和出差次数,从而为企业节省开支,同时也提高了员工的合作意识,增强了企业的凝聚力。关键词: 局域网;JAVA;Socket;企业即时信息The design and implementation of the workbench systemAbstractas the network become more and more developed, people become more and more lean to the network, and can not leav

3、e with out it. This caused the chat materials become more numerous, as the overseas ICQ system, the OICQ system that invented by Tencent Co., and so on. So we create a network chat medium just like the QQ. Java network programming based on the power, the use of Java designed to prepare graduates a w

4、ork platform system based on LAN.This paper introduces in detail the development and work platform system based on LAN process.The project adopts the method of software engineering, the integrated use of database technology, program design technology, network technology, MyEclipse development tool t

5、o Java language as a system receptionist application development tools. The LAN chat by client/server tool (C/S) mode and TCP connection and implementation ofparalleltasksby using multiple threads.In this design,interface designthrough the humanityis more convenient to usereasonable function.Finally

6、 realizes thecommunication,to provide amore convenient way to communi-cate,enhance the enterprisesinformation sharingand communication ability,improve staffwork efficiency,reduce theenterprise internalcommunication costsand traveltimes,so as tosave moneyfor the enterprise,but also improve the staffs

7、 cooperation consciousness,enha-nce the cohesion of the enterprise.Key words: Local area network (LAN); JAVA; socket;Enterprise instant messagingii目 录摘 要iAbstractii1 绪论11.1 引言11.2 国内外企业即时通讯 (工作交流平台)研究现状11.3 研究的意义21.4 本文的主要工作22 相关技术及环境简介32.1 MyEclipse介绍32.2 Java语言42.2.1 Jar命令42.2.2 Java和Internet42.3

8、C/S模式介绍52.4 Socket编程62.4.1 Socket简介62.4.2 关于TCP/IP协议62.4.3 服务器和客户机72.5 编程运行环境82.6 ORACLE数据库简介82.7 JDBC92.8 小结93 需求分析103.1 可行性分析103.1.1 经济可行性103.1.2 技术可行性103.1.3 操作可行性103.1.4 需求可行性分析103.1.5 性能可行性113.2 系统功能需求113.3 系统性能需求113.4 系统运行环境114 概要设计124.1 工作板即基于局域网工作交流平台系统的实施原理134.1.1 工作方式和技术原理134.1.2 通讯方式134.2

9、 软件设计流程134.3 系统功能模块144.4 客户端实现流程图154.5 类模块设计164.6 程序设计的重点164.7 接口设计165 详细设计175.1 系统功能要求175.1.1 基于局域网工作交流平台的要求175.1.2 基于局域网工作交流平台的管理子系统要求175.2 系统性能要求175.3 数据库设计185.3.1 数据库需求分析185.3.2 数据库逻辑结构设计185.3.3 数据库表的创建195.4 系统基本功能设计与实现195.4.1 服务器程序模块设计与实现195.4.2 用户注册模块设计与实现205.4.3 用户登录模块设计与实现225.4.4 添加好友模块设计与实现

10、245.4.5 聊天模块设计与实现265.4.6 文件传输模块设计与实现285.5 小结326 系统调试与测试336.1 程序调试336.2 程序的测试336.2.1 测试的重要性及目的336.2.2 测试的步骤346.2.3 测试的主要内容34结 论37参考文献38致 谢39外文原文40外文原文翻译511 绪论1.1 引言在网络飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。互联网上存在大量的信息所以信息交换也显得尤为重要。人们一直在寻找一种方便、低廉的交流信息的工具,因此网上聊天便成为人们的首选。基于Java网络编程的强

11、大功能,本次毕业设计使用Java编写一个工作板即基于局域网工作交流平台系统。工作板即基于局域网工作交流平台利用的是互联网线路,通过文字、文件的信息交流与互动,有效节省了沟通双方的时间与经济成本;工作板即基于局域网工作交流平台不但成为人们的沟通工具,还成为了人们利用其进行电子商务、工作、学习等交流的平台,致力于帮助企业提高运作效率,降低沟通成本、拓展商业机会,它给员工提供更方便的沟通方式,增强了企业的信息共享和沟通能力,提高员工日常工作效率,减少企业内部通讯费用和出差次数,从而为企业节省开支,同时也提高了员工的合作意识,增强了企业的凝聚力。一般来说,聊天工具大多数由客户端程序和服务器程序外加服务

12、器端用于存放客户数据的数据库组成,本系统采用客户机/服务器架构模式通过Java提供的Socket类来连接客户机和服务器并使客户机和服务器之间相互通信,由于聊天是多点对多点的而Java提供的多线程功能用多线程可完成多点对多点的聊天,数据库管理系统用Oracle 11g完成并通过JDBC访问数据库。 本系统建立在JAVA平台上,系统的设计使用了面向对象技术和面向对象的设计原则。系统采用C/S结构,客户端与客户端以及客户端与服务器端之间通过Socket传送消息。使用JAVA语言编写,开发工具采用MyEclipse。服务器端设计与实现过程中,采用了多线程技术,可以在单个程序当中同时运行多个不同的线程,

13、执行不同的任务。大大增强了程序对服务器资源的利用。 基于局域网工作交流平台系统完成后将可进行用户间的聊天、对好友进行添加、对新用户的注册、发送消息、接受消息等等功能。1.2 国内外企业即时通讯 (工作交流平台)研究现状企业即时通信:简称EIM(Enterprise Instant Messaging),它是一种面向企业终端使用者的网络沟通工具服务,使用者可以通过安装了即时通信的终端机进行两人或多人之间的实时沟通。交流内容包括文字、界面、语音、视频及文件互发等。相对于个人即时通信工具而言,企业即时通信工具剔除了娱乐等因素,且更加强调安全性、实用性、稳定性和扩展性。目前,市场上的企业级即时通信工具

14、主要包括:腾讯公司的RTX、IBM公司的Lotus Sametime、微软公司的UC、点击科技的GKE、中国互联网办公室的IMO、红杉树公司的Easy Touch、亿企通的Jingoal等。经过几年来的市场考验和同行竞争,提供企业级即时通信软件服务的厂商也经历了大浪淘沙的艰难历程,目前的市场格局主要分为三类:第一类是介入即时通信领域时间较早的国际企业,如IBM、微软等。其优势在于起步早,产品在进入中国前已在国外企业用户中得到了广泛应用,企业知名度和产品知名度较高;缺点是在面对中国企业用户的特定需求时,其产品的适应度还较差,另外,国际厂商为了实现大而全的目的,它们的即时通信产品往往与自身的其他软

15、件系统关联度、依赖度很强 (如微软OCS和Exchange Server 2003的紧密捆绑,IBM Sametime与Lotus的紧密结合),这无疑会增加企业用户的采购成本。第二类是以腾讯为代表的国产软件企业。它们的产品设计更加贴近中国企业的实际需求,产品操作更加贴近中国人的使用习惯,并亦具有很高的品牌知名度。目前,此类企业已经成为中国企业级即时通信市场的主导力量,据第三方统计数据,仅腾讯RTX就已占到超过70%的市场份额。第三类是众多创业性的新兴企业。他们的特点是灵活性高,每个项目的定制性强;缺点是产品不成熟,品牌影响力差。该类企业由于其自身的资金和技术等薄弱环节,目前还不足以对企业即时通

16、信市场造成影响。 总之,目前中国企业即时通信领域的一个显著特征就是,国内外厂商都在争夺这个未来被普遍看好的市场,未来中国企业即时通讯行业发展的方向为:统一通信化、功能定制化、移动终端化、竞争激烈化和行业整合化。1.3 研究的意义近年来,随着全球信息化的不断发展,网络也在飞速发展。出于高效、快速地处理各种事务的目的,越来越多的企业在其内部使用局域网来进行工作。在内部局域网的帮助下,企业得以简化信息流程,提高信息交换的速度,从而提高工作效率。然而,随着企业规模的扩大,业务量地增加,企业内部多的信息越来越私密,企业只希望员工通过内部局域网进行沟通与交流,避免企业内部机密通过Internet泄露到外部

17、。为了解决上述矛盾,人们提出了开发工作板即局域网工作交流平台的构想,通过局域网工作交流平台软件,企业员工可以随时的进行即时信息传递,凿开网络会议等,有利于提高工作效率,同时有保护了企业内部的信息安全。1.4 本文的主要工作随着用户对软件功能的需求不断提高,企业即时通讯的产品也不断地更新换代。企业即时通讯的发展不论是在基础应用方面还是在扩展应用方面都有着飞跃。本文首先对工作板即基于局域网工作交流平台软件的发展以及其对人们的生活有何影响作了简述,并对开发环境和工具进行了相应说明并对此工作交流平台软件系统进行了较为详细的分析;进而提出了该多功能交流平台软件的设计方案。在本次多功能工作交流平台软件的设

18、计与开发中,本人主要设计开发登录模块、注册模块、聊天模块、并对此工作交流平台软件系统的登录模块、注册模块、聊天模块的设计与实现进行了较详细的说明和分析。2 相关技术及环境简介在确定系统的开发前景、意义、目标之后,就是选择好开发工具以及运用相关的技术来开发系统。在模式上,我们选择C/S架构的操作模式,这样可以方便公司统一管理,使得公司只需维护服务器,员工只要安装客户端即可做相关操作。接下来,将对本系统所用到的开发环境、语言和相关技术进行介绍,主要是对本次开发涉及到的理论知识和用到的开发工具做相关阐述。2.1 MyEclipse介绍MyEclipse企业级工作平台(MyEclipse Enterp

19、rise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,,JSP,CSS,Javascript,Spring,SQL,Hibernate。MyEclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse目前支持Java Ser

20、vlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具。在结构上,MyEclipse的特征可以被分为7类: JavaEE模型 WEB开发工具 EJB开发工具 应用程序服务器的连接器 JavaEE项目部署服务 数据库服务 MyEclipse整合帮助对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独

21、的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse5.5以前版本需先安装Eclipse。MyEclipse5.5以后版本安装时不需安装Eclipse。2.2 Java语言Java语言是SUN公司于1995年5月推出的新一代面向对象的计算机通用编程语言,是继WWW之后又一引起世界轰动的产品。Java语言的特点是跨平台和强大的网络编程功能。在Java语言诞生之前,Internet已存在,所以Java语言本身就封装了大量进行网络编程的类库,使得网络编程功能强大,同时又简化了网络编程的操作。

22、因此利用Java语言可以开发出功能强大的网络应用程序。2.2.1 Jar命令功能:Java归档工具语法:jar 命令选项 manifest destination input-file input-files jar工具是个java应用程序,可将多个文件合并为单个JAR归档文件。jar是个多用途的存档及压缩工具,它基于ZIP和ZLIB压缩格式。然而,设计jar的主要目的是便于将java applet或应用程序打包成单个归档文件。将applet或应用程序的组件(.class文件、图像和声音)合并成单个归档文件时,可以用java代理(如浏览器)在一次HTTP事务处理过程中对它们进行下载,而不是对每

23、个组件都要求一个新连接。这大大缩短了下载时间。jar还能压缩文件,从而进一步提高了下载速度。此外,它允许applet的作者对文件中的各个项进行签名,因而可认证其来源。jar工具的语法基本上与tar命令的语法相同。命令选项: -c:在标准输出上创建新归档或空归档。 -t:在标准输出上列出内容表。 -xfile:从标准输入提取所有文件,或只提取指定的文件。如果省略了file,则提取所有文件;否则只提取指定文件。 -f:第二个参数指定要处理的jar文件。在-c(创建)情形中,第二个参数指的是要创建的jar文件的名称(不是在标准输出上)。在-t(表(或-x(抽取)这两种情形中,第二个参数指定要列出或抽

24、取的jar文件。 -v:在标准错误输出设备上生成长格式的输出结果。 -m:包括指定的现有清单文件中的清单信息。用法举例:“jar cmf myManifestFile myJarFile *.class” -0:只储存,不进行 ZIP 压缩。 -M:不创建项目的清单文件。 -u:通过添加文件或更改清单来更新现有的 JAR 文件。例如:“jar -uf foo.jar foo.class”将文件 foo.class 添加到现有的JAR文件foo.jar中,而“jar umf manifest foo.jar”则用manifest中的信息更新foo.jar的清单。 -C:在执行 jar 命令期间更

25、改目录。例如:“jar -uf foo.jar -C classes *”将classes目录内的所有文件加到foo.jar中,但不添加类目录本身。2.2.2 Java和InternetTCP/IP(传输控制协议/网间协议)是internet的主要协议,定义了计算机和外设进行通信所使用的规则(应用层,传输层,网络层,链路层)。大多数基于internet的应用程序被看作TCP/IP协议的上一层. 如 : ftp, http, smtp, pop3, telnet, nntp等。 Java提供的网络功能有三大类: URL, Socket, Datagram. 其中,URL是三大功能中最高级的一种,

26、通过URL Java程序可以直接送出或读入网络上的数据。Socket是传统网络程序最常用的方式,可以想象为两个不同的程序通过网络的通信信道。Datagram是更低级的网络传输方式,它把数据的目的纪录在数据包中,然后直接放在网络上。2.3 C/S模式介绍20世纪90年代出现并迅速占据主导地位的一种计算模式为客户机/服务器模式,简称为C/S模式,它实际上就是把主机终端模式中原来全部集中在主机部分的任务一分为二,保留在主机上的部分负责集中处理和汇总运算,成为服务器;而下放到终端的部分负责为用户提供友好的交互界面,称为客户机。相对于以前的模式,C/S模式最大的改进是不再把所有软件都装进一台计算机,而是

27、把应用系统分成两个不同的角色和两个不同的地位:一般在运算能力较强的计算机上安装服务器端程序,而在一般的PC上安装客户机程序。正是由于个人PC机的出现使客户机/服务器模式成为可能,因为PC机具有一定的运算能力,用它代替了上面第一种模式的哑终端后,就可以把主机端的一部分工作放在客户机端完成,从而减轻了主机的负担,也增加了系统对用户的响应速度和响应能力。客户机和服务器之间通过相应的网络协议来进行通讯。客户机向服务器发出数据请求,服务器将数据传送给客户机进行计算,计算完毕,计算结果可返回给服务器。这种模式的优点充分利用了客户机的性能,使计算能力大大提高;另外,由于客户机和服务器之间的通讯是通过网络协议

28、进行的,是一种逻辑的联系,因此物理上在客户机和服务器两端是易于扩充的。C/S模式是目前占主流的网络计算模式。该模式在操作过程中采取的是主动请示方式:首先服务器方要先启动,并根据请示提供相应服务(过程如下): 打开一个通信通道同时通知本地主机,服务器愿意在某一个公认地址上接收客户请求。 等待某个客户请求到达该端口。 接收到重复服务请求,处理该请求并发送应答信号。 返回第二步,等待另一客户请求。 关闭该服务器。客户端: 打开一个通信通道,并连接到服务器所在主机的特定端口。 向服务器发送服务请求报文,等待并接收应答;继续提出请求。 请求结束后关闭通信通道并终止。分布运算和分布管理是客户机/服务器模式

29、的特点。最后选择了C/S模式。2.4 Socket编程 2.4.1 Socket简介Socket,简称套接字,用于实现网络上客户和服务器之间的连接。也就是说网络上两个或两个以上双工方式通信的进程之间总有一个连接,这个连接的端点成为套接字,套接字是在比较低的层次上通信的。具体的说:一个服务器应用程序一般侦听一个特定的端口等待客户端的连接请求,当一个连接请求到达时,客户端和服武器端建立一个通信连接,在连接过程中,客户端被分配一个本地端口与一个Socket建立连接,客户端通过写Socket来通知服务器,以读Socket中的信息,类似的服务器也获得一个本地端口,它需要一个新的端口号来侦听原始端口上的其

30、他连接请求。服务器也通过它的本地端口连接一个Socket,通过读写和客户端通信。Socket程序的工作过程: 建立Socket连接:在通信开始之前由通信双方确认身份,建立一条专用的虚拟连接通道。 数据通信:利用虚拟连接通道传送数据信息进行通道。 关闭:通信结束时,再将所建的虚拟连接拆除。具体如下图2-17.关闭3.客户端socket6.写5.读5.读6.写7.关闭4.接收2.监听1.服务器socket:图2-1 Socket套接字原理图2.4.2 关于TCP/IP协议 TCP协议是网络通信的基石,对此Java专门提供了Socket的类库,在其中抽象出TCP协议通信的常用方法:TCP协议与三次握

31、手。为了实现客户端同服务器端的通信,客户端首先发送一个“SYN”数据包。如果服务器收到SYN标记,它将发回一个“SYN+ACK”数据包。接着,客户端为了表示收到了这个SYN+ACK信息,会向服务器发送一个最终确认信息(ACK包)。这种SYN,SYN+ACK,ACK的步骤被称为TCP连接建立时的“三次握手”,在这之后,连接就建立起来了,这个连接将一直保持活动状态,直到超时或者任何一方发出一个FIN(结束)信号。这种通信模式也叫客户端/服务器(C/S)模式。 如下图2-2:第一次握手,主机A向主机B发送连接请求第二次握手,主机B收到主机A的请求,向主机A回发一个确认,同时向主机A发送一个连接请求主

32、机A 主机BSYN=1,SEQ=ACK=1,SYN=1,SEQ=第三次握手,主机A收到主机B发送的数据包再向主机B发送一个确认连接ACK=1图2-2 三次握手协议 由此可见,通过客户端和服务器的“三次握手”,双方可以建立畅通的通信信道,在此信道上双方互相传输数据。 2.4.3 服务器和客户机 网络最基本的目的就是让两台机器连接到一起,并相互“交谈”或者“沟通”。一旦两台机器都发现了对方,就可以展开一次令人愉快的双向对话。但它们怎样才能“发现”对方呢?这就像在游乐园里那样,一台机器不得不停留在一个地方,侦听其他机器说:“嘿!你在哪里呢? ” “停留在一个地方”的机器叫做“服务器”(Server)

33、,到处“找人”的机器则叫做“客户机”(Client)或者“客户”。它们之间的区别只有在客户机试图同服务器连接的时候才显得非常明显。一旦连通,就变成了一种双向通信,谁来扮演服务器或者客户机便显得不那么重要了。 所以服务器的主要任务是侦听建立连接的请求,这是由我们创建的特定服务器对象完成的。而客户机的任务是试着与一台服务器建立连接,这是由我们创建的特定客户机对象完成的。一旦连接建好,那么无论在服务器端还是客户机端,连接只是魔术般地变成了一个IO数据流对象。从这时开始,我们可以像读写一个普通的文件那样对待连接。所以一旦建好连接,我们只需使用自己熟悉的IO命令即可。这正是Java联网最方便的一个地方。

34、 如下图2-3:服务器Socket(TCP) Socket(TCP) Socket(TCP) UDP UDP UDP图2-3 服务器和客户机的连接2.5 编程运行环境1.硬件环境:CPU: Inter(R)Core(TM)i5 CPU内存:3 GB硬盘:500 GB2.软件环境:操作系统:Windows 7应用软件:MyEclipse8.5 + JDK 1.7 + Oracle 11g2.6 ORACLE数据库简介ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。

35、比如SilverStream就是基于数据库的一种中间件。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。Oracle数据库最新版本为Oracle Database 12c。Oracle数据库12c引入了一个新的多承租方架构,使用该架构可轻松部署和管理数据库云。此外,一些创新特性可最大限度地提高资源使用率和灵活性,如Oracle Multitenant可快速整合多个

36、数据库,而Automatic Data Optimization和Heat Map能以更高的密度压缩数据和对数据分层。这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的主要增强,使得Oracle数据库12c成为私有云和公有云部署的理想平台。2.7 JDBCJDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java AP

37、I 编写数据库应用程序,同时,JDBC也是个商标名。 有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。Java数据库连接体系结构是用于Java应用程序连接数据库的标准

38、方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。2.8 小结本章主要是介绍本系统设计及开发所要涉及的相关技术。从程序员的角度简单概括性地介绍了相关知识,如用到的开发工具、开发环境、系统需要的技术支持,系统运行环境等,从而能从整体上对现系统的技术层次有一定的了解。本章作为此次设计的第二章

39、,主要是考虑到有些知识事先介绍能让读者对于系统的框架和内容初步的认识,而且能够更好的理清此次设计思路和开发方案。3 需求分析3.1 可行性分析3.1.1 经济可行性由于本系统的主要背景是毕业课程设计,不注重直接的经济效益和其后的发展方向,只在注重自身水平和能力的提高,对自身的经济要求也不高,只要有一台能运行Java软件的电脑便可,相关资料参考文献可从网上和图书馆查找,所以不用考虑到经济问题。 3.1.2 技术可行性技术上的可行性分析主要分析技术条件能顺利完成开发工作,硬、软件能满足开发者的需要等。系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,

40、可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。本系统的开发利用Oracle 11g作为本系统的数据库,它是一个支持多用户的新型数据库,适用于大中规模的数据量需求。学校校园网的建设也为新系统服务器/客户端的结构提供了硬件的支持。使用Java作为系统开发的开发环境,它提供完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。 3.1.3 操作可行性本系统为一个小型的局域网聊天系统,所耗费的资源非常的小,现在一般的电脑无论是硬件还是软件都能够满足条件,因

41、此,本系统在运行上是可行的。 3.1.4 需求可行性分析可靠性高,能在由于系统问题或其它原因产生错误后,作出相对应处理,比如网络初始化失败、服务器不在线等,可以提示用户安全退出本程序,在出现不可知的错误以后,可以尽量安全的退出程序。在程序的设计过程中,要求能尽可能多的设想到用户使用过程中可能发生的事件,并能在判断事件后做出相应的处理,使程序具有较高的容错性能。 宜操作性,程序简单易懂,容易上手使用。设计界面是,简化界面的复杂性,模拟QQ等现有即时通讯工具的界面,使用户能很容易看懂并使用。 开发文档易理解,保证以后自己二次开发或他人接手开发时,能够清晰的理解整个系统的设计思路和实现细节。 模块化

42、设计此软件的功能,不同的模块实现不同的功能,使得软件易于以后的维护与扩展,在以后可以更好的完善本软件的功能,更方便于在工作中的应用。3.1.5 性能可行性从时间上看,在三个月的时间里学习相关知识,并开发系统,时间上是有点紧,但是可以实现,通过三个多月的努力功能基本上是可以实现的。 综上所述,本系统的设计与开发在技术上和软、硬件设备上的条件都是满足的,因此,它在技术上是可行的。3.2 系统功能需求本系统主要通过客户端、服务器端来体现工作板系统的基本功能。 1、服务器端 (1) 处理用户注册 (2) 处理用户登录 (3) 处理用户发送信息,服务器监控聊天内容,服务器过滤非法内容 (4) 处理用户得

43、到信息 (5) 处理用户退出 (6) 存用户聊天信息。 2、客户端 (1)用户注册界面及结果 (2)用户登录界面及结果 (3)用户发送信息界面及结果 (4)用户得到信息界面及结果 (5)用户退出界面及结果 3.3 系统性能需求 1.实用性:为局域网交流提供方便,有效进行作业管理。可应用于企业办公室,以及校园电子阅览室 2.操作简单:本系统应该适用于不同水平的使用者,包括事业单位和企业单位,同时系统不应太复杂和烦琐,因此要求系统的操作尽可能简单易行。 3.技术先进:产品的系统设计和开发应紧跟着整个计算机发展潮流,采用当时最先进的设计思想,利用最新的开发技术和开发工具。使系统能够无论在功能设计上,

44、还是在技术实现上,都处于同行业的领先地位。 4.安装使用简便:服务器端的安装简洁明了,客户机无需再装任何软件就可以直接注册登陆聊天。 5.代码可读性好:文中的代码将尽可能简洁、易懂。 3.4 系统运行环境 运行环境Windows 7必要环境JDK 1.6 以上 硬件环境CPU 400MHz以上,内存64MB以上4 概要设计在这里我们将该工作板即基于局域网工作交流平台系统命名为IMessaging,现在对该系统进行概要设计。采用客户机/服务器(C/S)的模式来设计,是一个2层的C/S结构:应用程序服务器应用程序客户端,其分层机构如图4-1所示。图4-1 C/S结构示意图客户层也叫做应用表示层,也

45、就是我们说的客户端,这是应用程序的用户接口部分。给即时通讯工具设计一个客户层具有很多优点,这是因为客户层担负着用户与应用间的对话功能。它用于检查用户的输入数据,显示应用的输出数据。为了使用户能直接地进行操作,客户层需要使用图形用户接口。若通讯用户变更,系统只需要改写显示控制和数据检查程序就可以了,而不会影响其他两层。服务层又叫做功能层,相当于应用的本体,它是将具体的业务处理逻辑编入程序中。例如,用户需要检查数据,系统设法将有关检索要求的信息一次性地传送给功能层;而用户登录后,聊天登录信息是由功能层处理过的检索结果数据,它也是一次性传送给表示层的。在应用设计中,必须避免在表示层和功能层之间进行多

46、次的数据交换,这就需要尽可能进行一次性的业务处理,达到优化整体设计的目的。软件开发过程中的概要设计,主要解决实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及模块结构的设计等。4.1 工作板即基于局域网工作交流平台系统的实施原理4.1.1 工作方式和技术原理本系统的IM工作方式如下:登陆IMessaging通讯服务器,获取一个自建立的历史的交流对象列表(同事列表),然后自身标志为在线状态,当好友列表中的某人在任何时候登录上线并试图通过你的计算机联系你时,IM系统会发一个消息提醒你,然后你能与他建立一个聊天会话通道进行各种消息如键入文字、通过语音等的交流,从技术上来说,聊天系统的基本技术原理如下:第一步,用户A输入自己的用户名和密码登录IM服务器,服务器通过读取用户数据库来验证用户身份,如果验证通过,登记用户A的IP地址、IM客户端软

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁