评语: 课程设计成绩
考 勤
软 件
报 告
答 辩
总 成 绩
教师签名:
《Java 网络编程》课程设计报告
多线程网络通信系统的设计与实现
学院(系): 计算机科学与技术学院
班 级: 0504202
学生姓名: 黄维维 学号 050420223
指导教师: 张淼
时间: 从 2007 年 12 月 8 日 到 2008 年 12 月 19 日
摘要:
在网络飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重
要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。互联网上
存在大量的信息,人与人之间的沟通、信息交换显得尤为重要。为了适应网络
1
大潮,方便各级部门与上级部门的联系及数据汇报,特构建聊天系统。Java 能
够快速有效的解决这些问题,此系统能实现信息交互以及信息保存等功能。本
文介绍了毕业设计课题的选题背景和意义,相关的研究和开发的比较和综述,
研究开发的过程,以及设计思路和实现细节的考虑。
目 录
1 引言……………………………………………………………………………….2
1.1 平台选择……………………………………………………………………………….2
1.2 设计内容……………………………………………………………………………….2
1.3 系统开发工具………………………………………………………………………….2
2 需求分析………………………………………………………………………………………4
2.1 业务需求……………………………………………………………………………….4
2.2 系统功能模块……………………………………………………………………….....4
2.2.1 服务器端………………………………………………………………………….4
2.2.2 客户端…………………………………………………………………………….4
2.3 性能需求……………………………………………………………………………….4
3 概要设计………………………………………………………………………………………4
3.1 各模块详细功能……………………………………………………………………….4
3.1.1 服务器端结构…………………………………………………………………….4
3.1.2 客户端结构……………………………………………………………………….5
3.1.3 用户登录流程…………………………………………………………………….5
3.1.4 用户聊天流程…………………………………………………………………….6
3.2 系统实现原理………………………………………………………………………….6
4 详细设计………………………………………………………………………………………7
4.1 服务端程序…………………………………………………………………………….7
4.1.1 问题陈述………………………………………………………………………….7
4.1.2 解决方案………………………………………………………………………….7
4.1.2.1 用户登录…………………………………………………………………..7
4.1.2.2 用户断开连接……………………………………………………………..8
4.1.2.3 接收聊天信息……………………………………………………..………8
4.1.2.4 返回聊天信息……………………………………………………………..8
4.2 客户端程序…………………………………………………………………………….8
4.2.1 用户注册………………………………………………………………………….8
4.2.1.1 收集用户信息……………………………………………………………..8
4.2.1.2 断开与服务器连接………………………………………………………..9
4.2.2 聊天室…………………………………………………………………………..10
4.2.2.1 用户发送信息……………………………………………………………10
4.2.2.2 用户接受信息……………………………………………………………10
4.2.2.3 退出聊天系统……………………………………………………………10
5 总结…………………………………………………………………………………………..11
多线程网络通信系统
1 引言
2
1.1 平台选材
计算机网络技术是计算机领域中发展最迅速的新技术之一,对社会和
经济发展做出了极大的贡献。计算机网络的普及和推广,将会使越来越多
的人能够利用网上资源,享受不断发展和完善的网络服务,提高工作效率
和水平。随着我国经济和社会发展进一步与国际接轨,各种新技术的引入
和应用开发正在蓬勃发展和深入。在程序设计领域,面向对象的编程技术
正在逐步代替面向过程的程序设计技术,成为计算机应用开发的主流,尤
其在网络应用开发中,面向对象的 Java 语言编程和相关的 Java 技术应用正
在以前所未有的速度发展。
随着网络社会的不断发展,具有相同兴趣的网民也不能互相认识,通
讯极不方便,所以开发一个聊天室的通讯系统就变得非常有意义了。
1.2 设计内容
本系统分为两部分,客户端,服务端:
客户端用户可以自由聊天,发送信息,服务端为客户端提供服务,建立
连接,占用资源很少。
1.3 系统开发工具
Eclipse 简介
Java 聊天室系统的开发环境为 Eclipse3.2.1, Eclipse 是一个开放源代码的、
基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,
用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插
件集,包括 Java 开发工具(Java Development Tools,JDT)。 Eclipse IDE
集成开发环境早期由 IBM 公司研制与 2001 年左右捐赠给 Eclipse 开源组织。
他的免费、开源、跨平台、强大性能获取了全世界程序员的好评,操作界
面灵活,可任意自主组合,与编程语言无关(有 C、C++、php……开发插
件),强大的代码智能补全、纠错、重构……,还有易用的调试器让你更
好的发现并改正错误。
虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的
目 标 不 仅 限 于 此 。 Eclipse 还 包 括 插 件 开 发 环 境 ( Plug-in Development
Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人
员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的
每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一
的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
这种平等和一致性并不仅限于 Java 开发工具。尽管 Eclipse 是使用 Java
语言开发的, 但它的用途并不限于 Java 语言;例如 ,支持诸如 C/C+
+、COBOL 和 Eiffel 等编程语言的插件已经可用,或预计会推出。Eclipse
框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容
管理系统。
3
图 1-1 Eclipse 启动界面
图 1-2 Eclipse 集成开发界面
2 需求分析
2.1 业务需求
1.实现局域网内聊天;
2.各客户端显示聊天内容;
3.客户端有客户列表。
4