中文摘要
当前是信息网络得到飞速发展的时代,尤其是计算机和通信技术的发展和结合,深深的影响着我们的生活、学习和工作方式。其中,网络聊天工具成为人们日常交流的一种重要工具,它成本低,通信速度快,方便信息交流和资料的传递。目前应用比较广泛的聊天工具有腾讯QQ、Net meeting、MSN等,这些软件简单易用,深受大众喜欢。
在论文中,首先论述了系统的开发背景,并对所用到的开发工具与关键技术做了简单的介绍。接着对系统的研究意义,研究现状及设计目标进行分析,通过对系统需求和可行性进行分析,确定了系统的功能模块,并画出相应的功能结构图、模块图。其次按系统总体设计的结果,对系统进行结构设计。
本次开发的网络聊天系统是基于开放的Java应用程序设计的,能动态、实时地完成信息的传递,且具有高效的交互性,能更有效地处理客户请求,易于维护和更新。系统采用客户机/服务器的架构模式,由客户端程序和服务器程序外加服务器端用于存放客户数据的数据库组成,使用Java提供的Socket类以及Java的多线程功能,在不同的端口上部署各类服务,可以在单个程序中同时运行多个不同进程,而客户端通过Socket发送信息给服务器,从而实现多点对多点的聊天。
关键词:Java,交互性,Socket类,多线程
ABSTRACT
The rapid development of the information networks, especially the development and integration of computer and communication technologies, has deeply affected our lives, learning and work. Among them, the Internet chat tool becomes an important tool for daily communication, because of it's low cost, fast communication and facilitate information exchange and data transmission. Currently used widely in the chat tool are Tencent QQ, Net meeting, MSN, etc.
In the paper, firstly I discuss the background of the development of the system and simply introduce the development tools and key technologies used. Secondly I analyze the research and design objectives to the significance of the system. Through the system requirements and feasibility analysis, I determine the functional modules of the system and draw the corresponding function block diagram, block diagram. Then according to the results of the overall system design, I design the structural of the system.
The development of the Internet chat system is designed based on open Java application. It can be dynamic, real-time information transfer and efficient interaction so that it can deal more effectively with customer requests, easy to maintain and update. The system will use the client / server architecture model, which includes the client program and server programs plus server-side database used to store customer data. By using the socket class provided by java and java multi-threading capability,we can deploy various services on a different port and a number of different processes can be run simultaneously in a single program. Clients send information to the server through the socket in order to achieve multi-point-to-multipoint chat.
Key words: Java, interactivity, the Socket class, multi-threaded
目录
第1章 绪论 1
1.1 课题背景 1
1.2 开发技术 1
1.2.1 Java 1
1.2.2 TCP/IP 3
1.2.3 Socket 4
1.3开发工具 5
1.3.1 Eclipse 5
1.3.2 StarUML 6
第2章 系统需求分析 7
2.1 基本功能需求 7
2.2 性能需求 7
2.3 界面需求 7
第3章 系统设计 8
3.1 系统功能设计 8
3.2 系统总体设计 9
3.2.1 系统方案设计 9
3.2.2 系统功能模块图 9
3.2.3 系统类图 10
3.2.4 系统用例图 11
3.2.5 时序图 12
3.2.4活动图 12
第4章 系统实现 17
4.1 数据库连接实现 17
4.2 登录、注册功能实现 18
4.3 聊天功能实现 20
4.4 好友管理功能实现 25
4.5 资源共享功能实现 30
总结 34
参考文献 35
致谢 36
第1章 绪论
1.1 课题背景
现在互联网越来越发达,网络聊天工具成为人们日常交流的一种重要工具,它成本低,通信速度快,方便信息交流和资料的传递,所以开发一个界面友好、易于操作的聊天工具能较好地解决电话的单线程通信以及费用高昂等问题。随着网络普及程度的提高,人们对于通信软件的要求越来越趋于简单操作,同步实时,以及更简单的网络传输。
本次开发的网络聊天系统是基于开放的Java应用程序设计的,能动态、实时地完成信息的传递,且具有高效的交互性,能更有效地处理客户请求,易于维护和更新。
系统分为两部分:客户端和服务器端。客户端主要实现新建用户、用户登录、好友管理和消息的收发功能以及群聊功能,客户端申请与服务器端建立连接,当客户端与服务器端建立连接通道后就可以像服务器端发送新建用户信息和登录信息,以及好友管理、信息编辑、发送和接收的功能;服务器端主要完成建立连接、数据库操作和监听客户三大功能,服务器端建立一个Server Socket的连接,不断侦听客户端是否建立连接或断开连接,如果有客户端申请连接就启动线程与客户端建立连接并按照客户端的请求对数据库进行操作并把结果返回给客户端。
1.2 开发技术
1.2.1 Java
Java是一个由Sun公司开发的新一代高级编程语言。它可在各式各样不同机器、不同操作平台的网络环境中开发软件。不论你使用的是哪种WEB浏览器,哪种计算机,哪种操作系统,只要WEB浏览器上面注明了"支持Java",并且装有JAVA控件,你就可以看到生动的主页。Java正在逐步成为Internet应用中最主要的开发语言,它彻底改变了软件开发模式,带来了自PC机以来又一次革命,为飞速发展的网络世界增添了新的动力。
(一)JAVA的主要特点
Java语言有下面一些特点:简单、面向对象、分布式、解释执行、 安全、体系结构中立、可移植、高性能、多线程以及动态性。
1.简单
Java语言是一种面向对象的语言,它通过提供最基本的方法来完成指定的任务。Java略去了运算符重载、多重继承等模糊的概念,且通过实现自动垃圾收集大大简化了程序设计者的内存管理工作。
2.面向对象
Java语言的设计集中于对象及其接口,它提供了简单的类机制以及动态的接口模型,实现了模块化和信息隐藏;而类则提供了一类对象的原型,并且通过继承机制,子类可以使用父类所提供的方法,实现了代码的复用。
3.分布性
Java是面向网络的语言。通过它提供的类库可以处理TCP/IP协议,用户可以通过URL地址在网络上很方便地访问其它对象。
4.安全性
用于网络、分布环境下的Java必须要防止病毒的入侵。Java不支持指针, 一切对内存的访问都必须通过对象的实例变量来实现,这样就防止程序员使用 "特洛伊"木马等欺骗手段访问对象的私有成员,同时也避免了指针操作中容易产生的错误。
5.体系结构中立
Java解释器生成与体系结构无关的指令,Java程序可在任意的处理器上运行。这些指令对应于Java虚拟机中的表
上一篇:
基于java开发的高校人事管理系统—培训管理模块论文
下一篇:
汝康皮肤护理液医治烧伤的可行性和效果分析