《计算机网络课程设计报告--局域网间的不同机器qq通信.docx》由会员分享,可在线阅读,更多相关《计算机网络课程设计报告--局域网间的不同机器qq通信.docx(6页珍藏版)》请在第一文库网上搜索。
1、计算机网络课程设计报告题目、问题描述(把你所选的题目及要求说一下)局域网之间的QQ通信(UDP)要求:实现局域网间的两台电脑的通信了解基于socket的程序设计方法,增强程序编写能力,加深对计算机网络通信的理解。另外,通过课程设计培养学生严谨的科学态度,认真的工作作风、团队协作精神、自主设计和独力思考的能力。使我们学会文献检索的基本方法和综合运用文献的能力。二、概要设计(抽象数据类型定义)1首先选择一个主机,得到此主机的IP地址,设置为服务器的特定ip,即为用户时登录所发送的的ip地址,2,客户连接时,创建一个SOCket套接字,向服务器发送一个消息,进行验证登录3,创建一个服务器SerVer
2、SOCket对象,监听一个端口,接受用户发来的信息,为用户创建一个线程与之通信三、详细设计(主要算法和函数间的调用关系)1启动服务器,监听本机端口:29SarvarSockMsarvarS=newSrvrSockt(6789);3,4,接受成功,就创建一个客户端套接字ScoketSocketc1inetS=servers.accept();5,验证用户登录,如果成功,就为用户创建一个线程欢迎使用迷你QQI三X用户m=密码=I登录I退if(u.gtPasswd().qua1s(123)/返回一个成功登录的信息包m.SatMasTypa(1);oos.writabjact(m);/这里开一个线程,
3、让该线程与客户端保持通讯。SarConC1iantThraadsect=newSarconC1iwtThraad(C1inMS);将用户id和为用户创建的ManagCIinthrad.addC7jent:T力read(u,gtUs工工d(),sect);/启动线程与该客户端通讯的线程,并启动线程Osect.start();将线程力口入至IJHaShMaP中利用用户工D名找到服务器所监听的线程名pub1icstaticHaShMaPhm=newHaShMaPString,SerConC1ientThread();/向中添加一个用户端的通讯线程;pub1icstaticvoidaddC1intTh
4、rad(StringUic1,SarConC1iantThraac1ct)-m.PUt(Uid,Ct);1客户端建立SoCket套接字Sockets=newSC)Ckt(”192.168.0.37,6789);ObjCtOUtPUtStramoos=newObjCtOUtPUtStram(s.gtOututStram();/发送用户对象到服务器OoS.writObjCt(O);ObjactInputStraamois=newObjCt工nutStram(s.gt工nutSt工am();MSSagms=(MSSag)OiS.radbjCt();2,3,显示好友列表,双击好友列表的好友,打开Cha
5、t聊天窗口,在文本框中输入信息,点击发送5,封装信息将发送者,接受者,信息的内容,信息的时间封装到一个message消息类中,通过监听用户所在的线程发送消息6,从服务器获得消息,发送到客户的Chat聊天界面Objact1nputStraamois=newObjectInputstream(s.get1nputStream();MSSagm=(MSSag)OiS.工adbjCt();/把从服务器获得信息,显示到聊天界面;Chatingchating=ManageQqChat.getQqChat(m.gtGtt工()+m.getSender();System.out.rint1n(chating)
6、;chating.ShOWMSSag(m);流程图服务器四、调试分析(调式过程中出现的问题及如何改正)两个客户登陆进行调试235681011131416Ej回区H11-1210两个客户进行聊天1正在和2%天1对2说asefsdfdsfFriApr0310:40:45CST20152对1说fdsafasdfasdfFriApr0310:40:48CST2015发送存在的不足:因为本组能力有限,加上时间紧迫,所以设计出来的本系统客户端与服务器端没有分开,这些都有待我们在以后的工作学习中进一步改进。五、心得体会(组内成员的分工及实习期间的体会)首先先感谢老师给我们这次机会来锻炼自己,让我们感受到学来的知识不是用来完成试卷的。其次我们在完成课程设计的过程中体会到团队合作的乐趣,我们学会积极的同团队成员交流,取长补短,共同进步。最后,在这次实习中虽然我们已经对程序进行不断地修改,但是很多地方还存在严重的不足,由于时间限制我们只完成到了这个程度,今后的学习我们将对其进行进一步的修改。六、用户手册(系统的使用方法介绍)1 .启动服务器程序,运行MySerVerFranIe.java,点击打开服务器2,打开客户端程序,输入用户名(20)和密码(123)3 .双击需要聊天的用户图像,点击发送按钮,发送信息