用户登录  |  用户注册
首 页毕业论文毕业设计下载定做交易过程截图支付宝在线支付
当前位置:完美毕业网毕业设计下载计算机毕业设计JAVA

点对点通讯软件的设计与开发

联系方式:点击这里给我发消息QQ212181988
官方主页:www.biye114.com
图片预览: ;论坛转帖
插件情况:
售后服务:请联系客服QQ:212181988
一键分享拿折扣:
  • 好的评价 如果您觉得此软件好,就请您
      0%(0)
  • 差的评价 如果您觉得此软件差,就请您
      0%(0)

软件简介

 摘 要

随着计算机网络技术的快速发展,人们的交流方式越来越多,传统的通信方式在速度和可靠性方面已经很难满足人们的需要,即时通信系统已经越来越受欢迎。同时,即时通信系统对现代企业也有着重大意义,它为诸企业开拓了网络应用的新领域。自从它诞生以来,以实时交互、资费低廉等优点,受到广大个人用户的喜爱,已经成为网络生活中不可或缺的一部分。本着学以致用的原则,本人开发了这套多用户网络聊天室系统,以满足网络用户的通讯需求。该系统具有操作简单、界面友好、功能丰富等优点。它采用Eclipse为基本开发环境,用java语言进行编写,开发中充分使用了计算机网络编程的基本理论知识,如TCP/IP协议、客户端/服务器端模式(Client/Server模式)、网络编程、JDBC数据库编程技术等。本论文就系统的开发过程做了详细的介绍,并对系统的原理、总体设计等方面做了深入细致的讨论。

关键词:聊天室 Socket Java JDBC 网络编程


Abstract

Along with the rapid development of computer network technology, the ways of people’s communication are increased rapidly. The traditional means of communication has become very difficult to meet people's needs in speed and reliability. Instant communication system has become the new darlings of the people. Meanwhile, Instant communication system is also of great importance to the modern enterprises. It exploits a new domain for the enterprise. It has been enjoyed by the majority of individual users for its real-time interaction between the advantages of low rates since its bored. It has been an integral part of network life. In apply of the principle of practice, I developed the set of multi-point chatting system to meet the network users' needs of communication. This system has some characteristic as follows : simplify operation, friendly interface, single function. The basic development environment with Eclipse, written with java language, development of computer network programming using the basic theory of knowledge, such as TCP / IP protocol, client/server mode (Client/Server mode), network programming design method.This paper introduced the process of the system's development in detail, and deeply discussed the principle of system、collectivity design.


Keywords: Chatting room SocketJava JDBC Network programming


目 录
1.前言 6
1.1 开发背景和意义 6
1.2 可行性分析 6
1.2.1 技术可行性 6
1.2.2 经济可行性 8
1.2.3 操作可行性 8
2.相关原理技术简介 9
2.1 Java语言简介 9
2.2 JDBC介绍 9
2.3 SQL Server简介 10
3.系统需求分析 13
3.1 业务需求 13
3.2 功能需求 13
3.3 可靠性需求 14
3.4 性能需求 14
4.多点聊天通信原理 15
4.1.套接字通信 15
4.1.1 客户端套接字 16
4.1.2 服务器端套接字 17
4.2 数据报通信 18
4.3 无连接的客户/服务器程序工作流程 20
4.4 多线程编程 21
5.总体设计 23
5.1 系统通信模型与拓扑结构设计 23
5.1.1 即时通讯系统的一般模型 23
5.1.2 即时通讯系统服务的拓扑模型 24
5.2 数据库设计 24
5.2.1 概念结构设计(ER) 25
5.2.2 逻辑结构设计 25
5.3 功能设计 26
5.2.1 服务器端功能设计 26
5.2.2 客户端功能设计 26
5.3 界面设计 28
5.3.1 服务器端界面设计 28
5.3.2 客户器端界面设计 30
6.详细设计 33
6.1 服务器端详细设计 33
6.2 客户端详细设计 33
6.2.1 功能模块的实现 33
6.2.2 用户登录功能的实现 34
6.2.3 聊天记录保存 34
结论 35
致谢 36
参考文献 37


1.前言
1.1 开发背景和意义
随着计算机网络日新月异的发展,人们的交流方式越来越多,传统的交流方式已经难以满足人们的交流的需求了,在互联网上即时的和好友取得联系,已经成为当今社会人们主流的联系方式。同时,即时通信系统对现代企业也有着重大意义,它能实现快速人际交流、数据共享,从而提高效率和生产力。实时通信为诸企业开拓了网络应用的新领域。自从它诞生以来,以实时交互、资费低廉等优点,受到广大个人用户的喜爱,已经成为网络生活中不可或缺的一部分。越来越多的企业已开始认识到即时通信工具能够带来极高的生产力,借助它的应用,来提高业务协同性及反馈的敏感度和快捷度。因此,两台计算机之间进行即时通讯、发送文件等交流方式已经成为必然潮流。因此出现了QQ、UC 等聊天工具,然而QQ、UC 等聊天工具虽然方便、实用,但是,娱乐功能太多,有很多吸引人的娱乐功能,从一定程度上来说,是一种娱乐工具,不能作为用于即时通讯的专用工具。目前,用于实现单一的即时通讯的软件实在太少,为此,我们决定开发一个专用于实现多台计算机之间即时通讯的软件,以方便多台计算机之间信息的快速交流。本系统基于C/S 模式实现,采用Java 语言编写。所有用户都通过服务器端中转消息,这也是现有大多数聊天系统所采用的模式。本系统真正地实现了多用户聊天的功能,可以在多点间快速传递信息。同时,它体积小,功能单一,界面简洁美观,容易上手,只要简单阅读服务器端和客户端的帮助文档即可完全掌握它的使用方法。是网络聊天,特别是局域网聊天不可多得的好帮手。
1.2 可行性分析
本节从技术、经济和操作三个方面对系统的可行性做出了分析。确定了系统是否值得实现。可行性分析是现代软件工程不可或缺的重要组成部分。对问题的可行性做详细认真的可行性研究,可以避免很多不必要的浪费,确保用最小的代价在尽可能短的时间内确定问题是否能够解决。
1.2.1 技术可行性
经过对系统需求的认真分析,综合各种计算机高级语言的特性和适应范围,最终决
定选择纯面向对象的Java 语言来完成我的毕业设计,Java 是Sun Microsystem 公司的James Gosling 开发的编程语言。Sun 公司的口号就是"网络就是计算机",Java 能使所有东西从桌面计算平稳的转变为基于网络的计算,它是专门为此而建立的,并显然是为了完成这个任务而来的。使用Java,我们可以相对轻松的编写一个有条理的网络程序。下面就技术可行性方面,对Java 语言作一简要介绍。Java 是一种简单的、面向对象的、健壮的、安全的、解释的、与平台无关的、多线程、动态的计算机语言。Java 的开发环境有不同的版本,Sun 公司相继的推出了J2ME、J2SE、J2EE 三大平台,尤其是J2SE 是Java 2 标准平台,广泛用于工作站、PC 机,被称为“互联网上的世界语”。这些为我们开发系统提供了强大的平台支持。而且Java 在互联网方面具有得天独厚的优势,也是最吸引我们的地方之一。
Java 最初是为家用电器进行集成控制而设计的一种语言,因此它必须简单明了。Java 摒弃了C++中容易引发程序错误的一些特性,如指针、结构以及内存管理等。Java提供了丰富的库类,可以帮助我们很方便的开发Java 程序。Java 致力于检查程序在编译和运行时的错误。Java 也是一种强类型的语言,其类型检查比C++还要严格,类型检查帮助我们检查出许多开发早期出现的错误。Java 自己负责内存管理,提供了垃圾回收机制,有效的避免了C++中最头疼的内存泄露问题。Java 的安全性可以从两个方面得到保证。一方面,在Java 语言里删除了指针和释放内存等C++功能,避免了非法内存操作;另一方面,通过Java 的安全体系架构来确保Java 代码的安全性。Java 作为一种网络语言,其源代码被编译成一种结构中立的中间文件格式。只要有Java 运行系统的机器都能执行这种中间代码。Java 源程序被编译成一种与机器无关的字节码格式,在Java 虚拟机上运行。Java 语言的一个重要的特性就是在语言级别支持多线程的程序设计,使得在编写多线程程序时十分的简单。JVM 很好的管理多个线程同时运行过程中了资源共享问题。Java 的动态性是其面向对象设计方法的扩展。它允许程序动态地装入运行过程中所需要的类。Java 编译器不是将对实例变量和成员函数的引用编译为数值引用,而是将符号引用信息在字节码中保存下来,传递给解释器,再由解释器在完成动态连接类后,将符号引用信息转换为数值偏移量。这样,对类中的变量和方法进行更新时就不至于影响存的代码。

1.2.2 经济可行性
在Java 诞生之初,Sun 及其明智的制定了一个开放的发展策略,为Java 的发展创造了一个良好的环境,可以说正是这个策略造就今天繁荣兴旺的局面,也因此Java 与开源结下了不解之缘。Java 世界中,开源组织与非盈利机构发挥到了极致,许多出色的工具都出自它们之手。比如JUnit、Cactus、Tomcat、Struts、JBoss、Eclipse、ANT、Xerces、Hibernate、Axis、AspectJ 等等,许多工具还会出现在我们的咖啡馆中,扮演重要的角色。Java 世界中,便宜无好货绝对不成立,这些工具拥有足以和商业软件媲美的质量,很多商业IDE 还集成了这些工具。“开源,不仅仅是Java 语言,还包括开发工具和框架,相对廉价的开发成本”。这就使得个人使用Java 作为开发平台成为可能。

1.2.3 操作可行性
与C、C++、Visual Basic、Delphi 等计算机语言不同,Java 技术特指应用,而不是Java 语言。Java 技术广泛应用于各种设备,为你提供各种工具、信息以及好玩的游戏。Java 为我们提供了可视化的图形API,基于此我们就能开发良好的GUI,为用户提供方便的操作环境。同时,Java 丰富的类库资源,使得我们在设计的时候可以通过简单的继承就可以实现许多复杂的功能。Java 优越的可移植性大大提高的软件的可重用性,用Java 开发的软件,可以不经过任何的更改就移植到支持Java 虚拟机的操作系统上,真正的实现了“一次编译,到处运行”。

2.相关原理技术简介
2.1 Java语言简介
Java技术是由美国Sun公司倡导和推出的,是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向Internet的开发工具。Java技术包括Java语言和Java MediaAPIs、SecurityAPIs、ManagementAPIs、Java Applet、Java RMI、Java Beans、Java OS、Java Servlet、JDBC、JNDI、Enterprise JavaBeans等。随着Java Servlet的出现和JSP的渐渐成熟,让Java正式的走向了Web开发技术的舞台。Java以其强大的移植能力,多线程处理和网络处理能力已成为研究人员,开发人员瞩目的焦点,它与Web技术的有机结合尤其适宜进行网络计算和动态多媒体信息的开发处理。Java技术带来的是一场革命,它是第一个真正独立于平台的语言,基于Java语言开发的软件可以实现“一次设计,到处运行”,即Java程序不经改变即可部署到任何运行Java虚拟机的计算机结构和操作系统,使得整个Web世界发生了翻天覆地的变化。
目前,Sun公司已经将Java技术分成了4大类:服务器使用的企业版(J2EE)、台式电脑使用的标准版(J2SE)、小型设备使用的微型版(J2ME)以及在欧洲销售的手机中使用的具有智能卡和标识标签功能的Java Card。
2.2 JDBC介绍
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC也是个商标名。
有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。
Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。
Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用途的机制。
JDBC 扩展了 Java 的功能。例如,用 Java 和 JDBC API 可以发布含有 applet 的网页,而该 applet 使用的信息可能来自远程数据库企业也可以用 JDBC 通过 Intranet 将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有 Windows、 Macintosh 和UNIX 等各种不同的操作系统)。随着越来越多的程序员开始使用Java 编程语言,对从 Java 中便捷地访问数据库的要求也在日益增加。
MIS 管理员们都喜欢 Java 和 JDBC 的结合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务, Java 和JDBC 可为外部客户提供获取信息更新的更好方法。

2.3 SQL Server简介
本次使用SQL Server 2000作为后台数据库,SQL Server是面向中小型企业应用的数据库软件,它对用户十分友好,使用起来非常方便。其自带的企业管理器和查询分析器为开发者管理和使用数据库提供了极大便利。而且,相对于ACCESS数据库来说,SQL Server的安全性更高。
1. SQL Server是一个功能全面的数据库
SQL Server是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。
2. SQL Server数据平台为各种规模的组织提供了以下好处:
(1) 充分利用数据资产。
除了为业务线和分析应用程序提供一个安全可靠的数据库之外,SQL Server也使用户能够通过嵌入的功能(如报表、分析和数据挖掘等)从他们的数据中得到更多的价值。您可以充分利用其强大功能性和灵活性将数据传递到组织的每个角落,而成本仅为其他一些系统的一部分。
(2) 提高生产效率。
通过全面的 BI 功能以及熟悉的 Microsoft Office 系统之类的工具集成,SQL Server为组织内信息工作者提供关键的、及时的业务信息以满足他们特定的需要。SQL Server的目标是将 BI 扩展到组织内的所有用户,并且最终帮助组织内所有级别的用户能够基于他们最有价值的资产——数据来做出更好的业务决策。
(3) 减少 IT 复杂性。
SQL Server简化了开发、部署和管理业务线和分析应用程序的复杂度,它为开发人员提供了一个灵活的开发环境,为数据库管理人员提供了集成的自动管理工具。
降低总体拥有成本 (TCO)。SQL Server中集成的方法和对产品易用性和部署上的关注提供了行业上最低的规划、实现和维护成本,使数据库投资能快速得到回报。
3. SQL Server可以与各种软件开发无缝集成
SQL Server数据引擎是企业数据管理解决方案的核心。此外 SQL Server结合了分析、报表、集成和通知功能。这使企业可以构建和部署经济有效的 BI 解决方案,帮助团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。此外,借助SQL Server的JDBC驱动包,可以很容易地在Eclipse开发工具中编写基于SQL Server数据库的应用程序。

下载地址

点击此处→注册会员上传设计赚钱
以上是大纲和介绍,如需要完整的资料请在线购买.

软件评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

下载说明

* 本站所有资料均已审核通过,内容原创保密,标准格式,质量保证
* 无需注册,点击在线购买后即可获取该套毕业设计(论文)完整
* 支付后请联系在线客服QQ:212181988发送资料
  • 官方微信