2022年JAVA聊天室实验报告.pdf

上传人:Che****ry 文档编号:12839739 上传时间:2022-04-26 格式:PDF 页数:11 大小:473.89KB
返回 下载 相关 举报
2022年JAVA聊天室实验报告.pdf_第1页
第1页 / 共11页
2022年JAVA聊天室实验报告.pdf_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《2022年JAVA聊天室实验报告.pdf》由会员分享,可在线阅读,更多相关《2022年JAVA聊天室实验报告.pdf(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、JAVA聊天室实验报告JAVA 聊天室实验报告姓名 :马琳越班级 :131114 学号 :13111368 日期 :2014 年 4 月 23 日目 录目 录 . 2 JAVA 程序课程设计任务书 . 3摘要 . 4第 1 章 引言 . 5第 2 章 聊天室系统的设计 . 7第 3 章 界面设计 . 11第 4 章 总结 . 错误!未定义书签。Java 聊天室的设计任务书1、主要内容用 JAVA 实现基于 C/S 模式的聊天室系统。 聊天室分为服务器端与客户端部分,服务器端程序主要负责侦听客户端发来的信息,客户端需要登陆到服务器端才可以实现正常的聊天功能。2、具体要求A.服务器端主要功能(1)

2、、在特定端口上进行侦听 ,等待客户端连接。(2)、用户可以配置服务器端的侦听端口,默认端口为 8888。(3)、向已经连接到服务器端的用户发送系统消息。B、客户端主要功能精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 11 页 - - - - - - - - - - JAVA聊天室实验报告(1)、连接到已经开启聊天服务的服务器端。(2)、用户可以配置要连接的服务器端的IP 地址与端口号。(3)、用户可以配置连接后显示的用户名。(4)、用户可以向所有人或某一个人发送消息。3、主要参考文献及运用工

3、具(1)Bruce Eckel 著Thinking in Java , 李刚著疯狂 Java讲义(2)使用技术 :Java 使用开发工具 :Eclipse摘 要在网络越来越发达的今天 , 人们对网络的依赖越来越多, 越来越离不开网络 ,由此而产生的聊天工具越来越多, 例如, 国外的 ICQ、国内腾讯公司开发的OICQ 。基于 Java 网络编程的强大功能 , 本次大作业要求使用Java 编写一个聊天系统。一般来说 , 聊天工具大多数由客户端程序与服务器程序外加服务器端用于存放客户数据的数据库组成, 但就是 , 由于自己数据库知识的部分遗忘, 本程序未连接数据库 , 采用客户机 / 服务器架构模

4、式 , 通过 Java 提供的 Soket 类来连接客户机与服务器并使客户机与服务器之间相互通信。本系统建立在 JAVA平台上 , 系统的设计使用了面向对象技术与面向对象的设计原则。系统采用C/S 结构, 客户端与客户端以及客户端与服务器端之间通过Socket 传送消息。使用 JAVA语言编写 , 开发工具采用 Eclipse 。服务器端设计与实现过程中 , 采用了多线程技术 , 可以在单个程序当中同时运行多个不同的线程,执行不同的任务。大大增强了程序对服务器资源的利用。聊天系统完成后将可进行多人对多人的聊天, 对好友进行添加、删除, 对新用户的注册 , 发送消息、接受消息等等功能。第 1 章

5、 引言1、1 背景在网络越来越发达的今天, 人们对网络的依赖越来越多, 越来越离不开网络, 由此而产生的聊天工具越来越多, 类似 QQ, 网络聊天时一类的聊天系统的发展日新月异 , 这些软件唯一的不足就就是必须要联网或者下载到它们的服务端 , 要不然就是没法脱离Intenet使用的。此次大作业既就是利用网络编程写一个聊天室 , 以期通过制作该程序能更好的学习网络软件编程知识,精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 11 页 - - - - - - - - - - JAVA聊天室实验报告

6、此聊天室为能在一个没有连接到Intenet的局域网使用聊天工具。网络编程的目的就就是指直接或间接地通过网络协议与其她计算机进行通讯。网编程中有两个主要的问题, 一个就是如何准确的定位网络上一台或多台主机 , 另一个就就是找到主机后如何可靠高效的进行数据传输。在TCP/IP协议中 IP 层主要负责网络主机的定位, 数据传输的路由 , 由 IP 地址可以唯一地确定 Internet上的一台主机。而 TCP层则提供面向应用的可靠的或非可靠的数据传输机制 , 这就是网络编程的主要对象, 一般不需要关心IP 层就是如何处理数据的。 目前较为流行的网络编程模型就是客户机/ 服务器 (C/S)结构。即通信双

7、方一方作为服务器等待客户提出请求并予以响应。客户则在需要服务时向服务器提出申请。 服务器一般作为守护进程始终运行, 监听网络端口, 一旦有客户请求 , 就会启动一个服务进程来响应该客户, 同时自己继续监听服务端口 , 使后来的客户也能及时得到服务。1、2 课程设计要求利用套接字 socket() 设计一个聊天程序 , 该程序基于 C/S 模式, 运行服务程序后 , 服务器创建成功 , 然后使服务器对某一个设定的端口处于监听状态, 当有客户端请求建立连接时, 服务器就可接受请求 , 建立连接!这样服务器与客户端就可相互发送消息, 实现聊天功能!1、3 项目功能特点1. 基本功能实现服务器监听,

8、客户端连接 , 可进行多人会话的C/S 聊天室。2. 服务器特点(1)、在特定端口上进行侦听 ,等待客户端连接。(2)、用户可以配置服务器端的侦听端口,默认端口为 8888。(3)、向已经连接到服务器端的用户发送系统消息。3、 客户端特点(1)、连接到已经开启聊天服务的服务器端。(2)、用户可以配置要连接的服务器端的IP 地址与端口号。(3)、用户可以配置连接后显示的用户名。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 11 页 - - - - - - - - - - JAVA聊天室实验报告

9、(4)、用户可以向所有人或某一个人发送消息。1、4 功能实现(1)、 注册功能(2)、 登陆验证功能功能(3) 、 客户通过服务器转发 , 实现聊天功能、(4) 、 实现公聊功能。(5) 、 易用, 美观的图形界面 , 实现系统托盘、第 2 章 聊天室系统的设计2、1 系统需求分析聊天室的设计目标 :通过做巩固所学 Java语言基本知识 ,增进 Java语言编辑基本功 ,掌握 JDK、 Eclipse等开发工具的运用 ,拓宽常用类库的应用 ,用 JAVA 实现基于 C/S模式的聊天室系统。需要实现以下一些基本功能: A消息发送 :用户可以发送消息给聊天室里所有的用户。B 消息接受 :用户可以接

10、收到其她用户发送给她的消息。C聊天室管理功能 :聊天室管理员可以启动或者关闭聊天室服务。2、2 系统开发及运行环境硬件平台 : CPU:Pentium 2、8GHz 以上。内存:256MB 以上。软件平台 : 操作系统 :Windows XP。运行环境 :JDK Version1、7 Eclipse 2、3 系统主要功能要求聊天室分为服务器端与客户端两部分,服务器端程序主要负责侦听客户端发来的信息 ,客户端需要登陆到服务器端才可以实现正常的聊天功能。本系统主要实现如下功能 : 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - -

11、 - - - -第 4 页,共 11 页 - - - - - - - - - - JAVA聊天室实验报告服务器 : 在特定端口上进行侦听 ,等待客户端连接。用户可以配置服务器端的侦听端口,默认端口为 8888。向已经连接到服务器端的用户发送系统消息。一台主机只能启动一个服务器。客户端 : 连接到已经开启聊天服务的服务器端。用户可以配置要连接的服务器端的IP 地址与端口号。用户可以配置连接后显示的用户名。当服务器端开启后 ,用户可以随时登录与注册。用户可以向所有人发送消息。2、4 基本设计概念与处理流程本系统运行用JAVA 开发,采用 CS 结构 ,系统分为客服端与服务端两大模块,使用 Sock

12、et 类建立套接字实现客服端与服务端得通讯。(1)系统主体的处理流程 : (2)总体结构发送请求返回应答客服端服务端精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 11 页 - - - - - - - - - - JAVA聊天室实验报告(3)功能分配客户端与服务器模块功能树图客户端 : 服务端 : 客服端显示在线用户接收并显示消息网络聊天室服务端客服端精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页

13、,共 11 页 - - - - - - - - - - JAVA聊天室实验报告2、4 设计原理通信方式1)服务器建立一个TCP监听端口 , 等待客户端连接。 2) 客户连接服务器, 服务器生成一个Socket 服务该用户。3) 服务器接收来自客户端的聊天信息, 然后遍历转发给所有在线用户。2、5 运行方式具体软件的运行模块组合为客户端窗口的运行环境,服务器无窗口环境,服务器与客户端在运行过程中传输字符,交换信息 ,处理数据。第 3 章 界面设计(1)注册登陆界面服务端转发用户消息处理用户注册 ,登录申请服务器管理精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下

14、载 名师归纳 - - - - - - - - - -第 7 页,共 11 页 - - - - - - - - - - JAVA聊天室实验报告(2)注册成功界面图(3)重复注册界面图精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 8 页,共 11 页 - - - - - - - - - - JAVA聊天室实验报告(3)登陆界面图登陆成功既跳出兑话框,服务器端将显示“登陆成功”以及“a client connected”(4)客户端界面图精品资料 - - - 欢迎下载 - - - - - - - - - -

15、- 欢迎下载 名师归纳 - - - - - - - - - -第 9 页,共 11 页 - - - - - - - - - - JAVA聊天室实验报告(5)多人群聊界面图。第 4 章 总结1、实验中遇到的问题以及解决整个程序的框架写出来后,准备启动多个客户端才发现此时不能同时启动多个客户端 ,后来阅读到课本“多线程”那一章,用多线程解决了此问题。后来,在客户端以及服务器端的交互过程中,不停的出现着各种异常以及问题,比方说IOException,EOFException,Socket Closed, 在不断的调试程序以及在网上找寻的视频学习的过程中才解决这些问题。后来在写登陆注册时,也会不断的出

16、现问题 ,不就是可以重复注册就就是注册了点登陆却不能响应,诸如此类的很多问题 ,自己调试了许久也并没有解决问题,最后找同学帮忙修改了此段程序。2、实验总结这次的大作业应该就是我接触到的第一个项目,项目虽小 ,却能暴露出很多问题。项目伊始 ,我在网上找了马士兵的java 讲课视频来瞧 ,为自己做项目找到了精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 10 页,共 11 页 - - - - - - - - - - JAVA聊天室实验报告一个大体的思路 ,但就是当自己着手做的时候,又会暴露很多问题 ,其中不乏

17、有基础知识没有掌握牢固的部分,所以说 ,此次的 java大作业也就是一个巩固所学知识的很好的机会。而且 ,通过这次大作业 ,我认识到实战一个项目所得到的远比整天抱着书本瞧知识更能长知识,这个项目使我在运用GUI、线程、 java 网络与流等的方面更加熟练 ,对于细小的知识点也更加巩固。而且,通过这个项目 ,我更深深的体会到 :好的程序不就是写出来的 ,而就是改出来的。 此次编程 ,自己事先罗列了一个提纲 :该实现什么功能 ,要实现此功能首先该实现什么。就这样一步步剖析到最底层一个很简单的东西,而自己的编码就从这个入手,然后一步步扩充 ,并不断调试,使程序更加健壮。通过这次作业我已经认识到了实战的重要性,写这份作业的这段时间就是忙碌并且充实的 ,之后 ,我也会每天都写一些代码来锻炼自己。本次实验运用了Eclipse,它确实很智能 ,很方便 ,但平时的训练中 ,我依旧会使用记事本来编码,这样,我才回更扎实的掌握java,我相信一段时间以后 ,自己的积淀已经够深 ,自己也有资格去借助 Eclipse去完成更多的项目。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 11 页,共 11 页 - - - - - - - - - -

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

当前位置:首页 > 教育专区 > 高考资料

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

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