基于JAVA的聊天通信系统设计毕业论文

 2021-04-10 11:04

摘 要

随着互联网的普及,人们利用电脑和互联网的时间越来越多,这使得网络即时通讯(Instant Messenger,简称IM)的普及成为了可能。随之出现的聊天工具也越来越多,例如国外的ICQ、MSN Messenger,还有国内腾讯公司开发的QQ等。JAVA是一种程序设计语言,该语言具有安全性、跨平台、面向对象、简单、适用于网络等显著特点。考虑到Java网络编程的强大功能,本人用Java编写了一个基于局域网的聊天系统。

文章是首先对即时聊天系统做背景介绍,然后给出了基于局域网的即时聊天系统的需求分析,接着重点探讨了即时聊天系统的设计方案,随后对即时聊天系统各个功能模块进行了较详细的说明,并给出了具体实现步骤。系统主要包括三个模块:消息管理模块、系统管理模块和用户管理模块。系统的设计基于C/S结构,采用数据报通信协议(UDP)来实现聊天功能,数据库用JAVADB完成并通过JDBC访问。聊天系统完成后可进行一对一的聊天、文件传输、管理用户和修改系统界面等功能。

关键字:Java;局域网;网络通信;UDP

Abstract

With the popularity of the Internet, people use computers and the Internet more and more frequently, which makes network IM (Instant Messenger, referred to as IM) universal as possible. As a result of it, different kinds of chat tools appears, such as ICQ, MSN Messenger as foreign products, and QQ developed by Tencent as domestic products. Because JAVA is a programming language which is secure, object-oriented, simple and suitable for network, besides it can run on different platforms and has other significant characteristics. Taking it into account that the power of Java network programming, I have written a LAN-based chat system with JAVA language.

The article first introduces the background of the instant chat system. Firstly, it gives the Requirement analysis of the instant chat system based on LAN. Secondly, it focuses on the design of chat system, and then gives a more detailed description on each module for the instant chat system and the concrete realization steps. Each function consists of three modules: information management module, system management module and the user management module. In a word, the system is based on Client-Server structure, and use datagram protocol (UDP) to realize the chat function. The database is completed by JAVADB and it accesses to the database through JDBC. The chat system can be one to one chat and other functions, such as file transmission, user management, modify system interface and so on.

Keywords: Java; LAN; Internet Messenger; UDP

目录

第一章 概述 1

1.1研究的背景、目的和意义 1

1.2国内外研究现状 1

1.3开发环境及研究思路 2

第二章 系统涉及的相关技术原理 5

2.1网络通信 5

2.1.1网络通信原理 5

2.1.2 UDP协议及实现方式 6

2.2 Java Swing技术 8

2.3 Swing的事件处理 9

2.4多线程技术 12

2.5 JavaDB数据库简介 14

第三章 系统设计 17

3.1系统需求分析 17

3.2系统功能结构 17

3.3 主窗体类的详细设计 18

3.4消息通信详细设计 20

3.5数据库详细设计 22

3.5.1数据库分析 22

3.5.2数据库设计 23

3.6多线程详细设计 23

3.7公共模块设计 25

第四章 系统实现 26

4.1主窗体模块的实现(EQ类) 26

4.1.1主窗体 26

4.1.2系统工具 27

4.1.3系统托盘 27

4.1.4用户管理 28

4.2消息通信的实现(TelFrame类) 29

4.2.1通信窗口 29

4.2.2 文件传输功能的实现 30

4.2.3 信史的实现 30

4.3 数据库的实现(Dao类) 30

4.4 多线程的实现 31

4.4.1 消息通信线程 31

4.4.2 文件传输线程的实现 31

4.5公共模块的实现 32

第五章 总结 33

参考文献 34

致谢 35

附录 36

第一章 概述

1.1研究的背景、目的和意义

随着互联网的发展迅猛,网络技术日新月异。人们也逐渐习惯通过上网来解决现实问题。根据用户的信息沟通需要,网络为人们提供了一种崭新的综合的交流平台,就是及时通讯软件。像现在很流行的QQ等,它们为用户们之间的沟通带来很多的方便,但是这些即时工具在企业或者学校禁止用户访问外网的时候,这些即时的通信工具就不能使用了,用户之间就不能很方便的沟通交流了,并且大多数网络通讯需要借助Internet上的服务器,这就给那些具有大规模内部网络的用户造成了许多问题,如浪费网络资源、遭遇网络攻击、病毒的入侵等等。所以为了方便用户之间的沟通,保证内部局域网的安全,需要开发一个基于局域网的即时通讯工具。

通过自己设计一个即时通讯工具,自己建立服务器,放在内部网络,在用户不能访问外部网络的时候,可以很方便用户之间进行沟通交流。Java具有简单的、完全面向对象以及与平台无关的结构,也具有可移植性、高性能和安全性,并提供了多线程的功能,相信它的平台无关性将能使聊天软件更加强大。

1.2国内外研究现状

基于局域网的即时通讯工具,可以说是一个Internet通信工具的小规模版本,一般采用UDP或者TCP协议体系来实现,开发技术已经比较成熟。国外的通信工具较有名的有ICQ、MSN Messenger、国产的QQ、新浪UC都实现了广域网的及时通信,最近几年,国内的局域网通信工较具有代表性的又飞鸽传书、飞信,这两款软件的快速、实效、迷你、简单的特点受到了很大好评。这些聊天工具虽然实用,但是,娱乐功能太多,有很多吸引人的娱乐功能,从一定程度上来说,是一种娱乐工具,不能作为用于即时通讯的专用工具。目前,用于实现单一的即时通讯的软件实在太少,为此,我们决定开发一个专用于实现多台计算机之间即时通讯的软件,以方便多台计算机之间信息的快速交流。

1.3开发环境及研究思路

本课题应用了计算机网络通信技术和JAVA网络编程的基础知识,通过Java的Java Swing技术和JavaDB技术,利用Eclipse开发工具开发出的基于UDP协议的网络即时通信系统,在装有任意系统的主机上都可以运行。本设计的开发是基于C/S结构的,该聊天系统主要包括三个模块:消息管理模块、、系统管理模块和用户管理模块。

您需要先支付 80元 才能查看全部内容!立即支付

课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找,优先添加企业微信。