计算机网络课程设计大作业.doc

上传人:xin****828 文档编号:6710456 上传时间:2020-03-02 格式:DOC 页数:7 大小:190KB
返回 下载 相关 举报
计算机网络课程设计大作业.doc_第1页
第1页 / 共7页
计算机网络课程设计大作业.doc_第2页
第2页 / 共7页
计算机网络课程设计大作业.doc_第3页
第3页 / 共7页
点击查看更多>>
资源描述
研究生课程计算机网络 课程设计论文 题目:利用Java语言的Socket编程实现网络环境下两 台计算机之间的字符聊天功能 学院:信息工程与自动化学院专业:电子与通信工程年级:2013级学号:姓名:分数1设计项目分析1.1需求分析1.1.1性能需求 利用Java 语言的Socket编程实现网络环境下两台计算机之间的字符聊天功能。一个QQ系统由一个服务器和若干个客户端组成。服务器和叫客户端之间通过TCP/IP网络协议通信。客户端的为用户服务的。客户端的功能:一是用户通过登入界面启动与服务器的连接,并发送用户的基本信息给服务器;二是客户端界面可以收到好友发送的信息,也能给好友发送信息。服务器为客户端服务的。服务器提供的功能是:一是等待客户端的连接,客户端连接上,保存客户端信息,并发信息告诉其它在线客户XX已经上线;二是起消息的转发作用,所有的客户聊天信息都有服务器来转发。1.1.2环境需求 运行环境:Windows xp、eclipse必要环境:JDK 1.5 以上1.2实现目标(1)登录界面,好友列表界面,聊天界面。(2)当用户点击登录后,把QQ号码和密码发送给QqServer去验证,如果该用户合法,则返回ok,反之返回Err。(3)完成多个好友互相聊天功能。(4)如果好友在线,则显示彩色头像,反之,显示灰色头像。(5)当好友上线后,提示。(6)把接收到的消息,显示到该显示聊天界面。(7)当一个用户上线是能看到所有的在线好友,用户可以群聊也可以选择某个人单独聊天。2 系统设计2.1模型分析客户端:建立与服务器的连接并登陆,能显示登陆错误信息,完成界面登录。并在每次用户接收到聊天信息后将会开始分析聊天信息,然后将适合自己的信息人性化地显示在与好友聊天界面上。服务器:检查登陆信息是否正确,并向客户端返回登陆信息。如信息正确,就将用户发送给该用户。可以将聊天信息,转发给消息指定的客户端。整体模型如图1所示。服务器客户端1客户端2登录/发送信息登录/发送信息Ok or Err /传送信息Ok or Err /传送信息验证/中转图1整体通信模型2.2流程分析(1)服务器端:运行服务器程序(2)客户端:进入登陆界面,输入QQ号码和密码,点登录按扭。进入好友列表。双击要聊天的好友,进入聊天界面。2.3设计分析MyServerFrame.java功能:服务器端的控制界面,可以完成启动服务器,关闭服务器可以管理和监控用户。SerConClientThread.java功能:是服务器和某个客户端的通信线程。MyQqServer.java功能:qq服务器,它在监听,等待某个qq客户端,来连接。QqFriendList.java功能:我的好友列表(也包括陌生人,黑名单)。QqClientLogin.java功能:qq客户端登录界面。QqChat.java功能:与好友聊天的界面ClientConServerThread.java功能:客户端和服务器端保持通讯的线程.QqClientConServer.java功能:客户端连接服务器的后台2.4结果分析1、运行MyServerFrame.java启动服务器,如图2所示。图2 启动服务器界面2、 运行QqClientLogin.java qq客户端登录界面图3 客户端登录界面3、在登录界面中输入QQ号码和密码,点击登录进入好友列表。图4 好友列表 图5 陌生人列表 图6 2号用户列表此例中QQ号码是150中的任一数字,密码是123456,输入号码1,登录后如图4所示。点击陌生人列表如图5所示,登录2号用户,刚1、2在线用彩色头像显示,不在线好友用灰色头像显示,如图6所示。 5、当用户5登录时,在用户1、2列表中同时更新在线用户,如图7所示。图7 用户好友更新列表6、通信界面打开两个用户聊天窗口,在信息输入框中输入聊天内容,点击发送按钮,即可实现客户端的通信,通信情况如图8所示图8 单用户通信界面该QQ系统也可以实现多用户之间的通信,如图9所示。 图9 多用户通信界面3总结3.1总结该项目没有使用到数据库,实现了登录,与好友聊天等的qq简易功能,基本满足了结构化、界面友好、速度快、安全性以及稳定性等特点。但功能还行欠缺,比如:在线添加用户、离线留言、在线传递文件、视频聊天、语音聊天等,都不能实现,同时界面也不够美观,希望能进一步完善。3.2收获和体会 本文设计的聊天系统,功能比较单一,需要进一步改进,在设计的过程中,加深了我对网络层的架构和实现方式的了解,让我对计算机网络的Socket编程进行了深入的学习,清楚了客户端与服务器在java编程中的流程,学习到不少知识。通过这次大作业设计,自己在理论研究和实际工作能力等方面都得到了提高,受益匪浅,这些无疑会给我今后的工作和学习带来很大的帮助。
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 中学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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