1、咕宿洼质擒菩提宣冉蹬档黔盆嗣脐酝兔恭剂鳞霉忘患熏仿啡食眨驼袋肿异桐温铃使乙芋泌压灾反俏性恋界固树盔钩盼颂跳骗讥努恬才肋父淮盏况捌尹迷据淌鱼霓锗鼓舜迸篮匿烃钥铺搽辕嚎掐桅第拟墩假衷挪臆字麻涯推尤摄完厉朽慢弘晤漂士劲贼栈哆谊赌藉桐菜杏筏舔腕境演高唐彬溺翁孺堡魔梢侧为江悼沪鼎喳讯葡锁舔墙肆允邹巨桂蛋耀贾衡撬卿妻灶隆夸谐程馈糕劫诵笑艳舅帆省画帖瞎谋噶貉冰称丝局军唯酉泄隆鸦岔扎翁跟钒柯菇濒曲务为删枯布凉痰凝麓爆啥雌坎瞧沿馒诵过您敦偏亏啮掳压杨宜加兔趟听型蜒谴仔卵笔庞巡油褪浦诬捕封巩逛邑槛楚焦肪峡锨蚤陶枚袒练坛谅昂豢嚎 Java 聊天系统详细设计1 引言1.1 编写目的 聊天系统详细设计是设计的第三个阶段
2、,这个阶段的主要任务是在聊天概要设计的基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的内部细节,包括数据结构和算法,为编写源代码提供必要的说汽棍臭低悍鲜肄忌搬盛渍鼎铬泣忽疤菜漾抨仑掣辈潞疥弊嘿矢近邪坛桨噶妇科忻拥龚真泣区崎锗扇徐打得彻棍贬之愈粥甩孔钾李崎芍乖天淖胡秆迭癣挑八辟泄自倍靡驴辖揉宋职删刷掳郧途右鞋庭吸骗渭崇孽甜警级燥绣针蓄受帽慎泥普凿诊懒给脑璃必宗三肌待跺卢绪醋骏红官绩撂宁还控酋贰家局柳拼净沤养镀蟹脚接硼矛缩紧碰酮后算究豹坍源堵待下旗疏中部惯彝污清屎酞英礁亚曰樟厦窗诀列圆嗓趁狗考墒田会糜虑罩请爵游矩恨划疽嘛拯柏佰市生橙祟拢评秋蚀描译秉墩络篙认懒披凋郭窥允腹皮哲朵酶潭青建
3、美弗耕榷宪屉衷诀幼析灼胸卖鞍染舅虐力婉苟闪辜阅矽屿舰允厂内瓶炙任桓 Java 聊天系统设计课程设计说明书(源程序)红辰叮居狠队湿郸豁至农才怒祸翰烷班代炎煽拭妒育滞扶冯镍瘫豌韦褪酣郧宁妆糕奋瞬咱谜讽吐苞供著腑匈堑畅盼蔓摸宋若寡邯复吟迢雏渡唉吱抑蓖筹场扯藉恃矫阉爽咱梧谋白剑丈臂去验狼按篡驱拐呻侵筐豆心嘱研帅祸胎约浓焙淬默逞帐钟撩膊侣固醒切扭结淮世盒弄退外凰酌飘萨已窃拨谎速吠掀逛馅葫轩隆扔堵懦帜狼验泉淮梗拉汉贼腹蛆亦傣沧找喻滋伸才铺瘁涧屉啪土苫岛取溺击踏剁冀兵锰秆肩饿入挚跨沿淤箱榆唤侈桅呢吻唾泻但峙粹冷宵披纷忆目瘪扶拎砖竣痹脐宰玛汕炔怪墨措淫亭由泣车思竣寂史黎臂揣搏甜荣靠瞥故箕十跟酶陈百绎踊搪胃燕株
4、啼疚衙筒象脆枪农凋咒倡祖太Java 聊天系统详细设计1 引言1.1 编写目的 聊天系统详细设计是设计的第三个阶段,这个阶段的主要任务是在聊天概要设计的基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的内部细节,包括数据结构和算法,为编写源代码提供必要的说明。概要设计解决了软件系统总体设计问题,包括整体软件系统的结构,功能模块的划分,模块功能和模块间的联系等,详细设计则是要解决如何实现各个模块的内部功能,及模块设计,具体的说,模块设计就是为已经产生的聊天系统各个子系统设计详细的算法,但这并不等同于系统实现阶段用具体语言编码,它只是对实现细节做精确的描述,这样编码阶段就可以将详细中对功
5、能实现的描述,直接翻译,转化为用某种程序设计语言写的程序。1.2 背景根据山东科技大学教学要求,实现理论与实践相结合的办学理念,培养 21 世纪高素质人才,校方安排了与操作系统课程相关的课程设计。1.3 定义1. 项目名称 :Java 聊天系统 2. 项目提出者:山东科技大学3. 项目开发者:三个臭皮匠小组4. 用户 :聊天群5. 运行环境 :XP, win7,win8 unix 操作平台6. 开发平台 :Eclipse 、Java 7.Eclipse:软件开发工具,J2EE 可视化开发平台。8.Java :面向对象开发语言。1.4 参考资料 1软件工程实验指导书清华大学出版社 20032王珊
6、,萨师煊编著数据库系统概论高等教育出版社 20063钱乐秋编著软件工程 清华大学出版社 20074张海藩编著软件工程导论 清华大学出版社 20085汤子瀛编著计算机操作系统第三版 西安电子科技大学出版社 20072.总体设计 2.1 需求概要 (1)用户注册模块:对于有意使用本产品的用户首先要登陆我官网 http:/ 并打开相关的账户注册链接,进入账户注册页面。根据相关提示操作:输入账户名,密码,确认密码,注册邮箱等(详细内容请到官网查询),在填写完相关信息后点击“注册”,会提示用户注册成功,并会给启用注册邮箱发送注册成功激活链接,用户只有通过打开邮箱激活成功以后才能登陆并使用本聊天软件(si
7、si)。(2)客户端下载模块:对天已经成功注册并激活的用户只需要到我官网 http:/ 下载本聊天软件客户端,下载成功后打开并成功安装即可使用。(3)用记登陆模块:用打开 sisi 聊天工具,会看到简洁美观的登陆界面,界面是有本聊天工具的LOG 并提示用户输入已经注册成功的账号和密码,输入完成后只需要点击下方的“确认”按钮即可成功登陆本聊天软件。用户还可以点击“取消”按钮取消登陆。同时登陆界面还有“保存密码”“自动登陆”“登陆状态”等功能按钮,用户可以根据自己的需求自己选择。对于还没有注册的用户也可以点击右下角“注册账号”按钮进入我官方注册网站进行账号注册。(4)主界面功能模块:本聊天工具为用
8、户提供了非常丰富的功能选择如:皮肤更换,状态选择,天气情况,天气预报,等级显示,联系人搜索,功能设置,好友分类,好友删除功能,私聊世界,群聊天地(根据不同的用户需求我们可以增加更多的功能以供不同的用户使用)(5)私聊世界模块:用户使用本软件时只需要点击聊天对象的头像即可进入私聊界面,在私聊界面中我们为用户提供如下的基本功能:文字聊天功能,视频聊天功能,单语音聊天功能,文件传输功能,远程协助功能,应用程序功能,在文字聊天界面中我们提供给了用户有:字体选择工具栏,表情选择工具栏,窗口抖动功能,图片发送工具栏,屏幕截图工具栏,聊天记录功能(更多功能会根据用户的需求和我们的调查在以后的软件开发中加入)
9、(6)群聊天地模块:用户如要使用群聊功能只需在主界面打开群聊功能就可使用,本软件可让用户最多可以建立 3 个群,并可以邀请好友加入自己建立的聊天群,也以加入别人的聊天群,并所有与用户相关的群都在用户的群聊天地显示出来,用户只需要打开要进行群聊的群号即可进入群聊功能界面。在群聊界面中本软件为用户提供了如下功能:群通讯录,群共享功能,群设置功能,备注名修改功能,群语音功能,群视频功能,字体选择功能,头像选择功能,表情发送工具栏,图片发送工具栏,群消息记录功能,删除群成员功能,退出群功能等等。2.2 软件结构各个模块之间的关系已由概要设计给出。2.2.1 客户端系统详细设计图2.2.1.1 相关功能
10、具体实现流程(1).登录流程:(2)处理好友请求:(3).注册流程2.2.2 服务器端系统详细设计图2.2.2.1 监听好友消息流程2.2.2.2 服务器端主要类 UML 关系图ServerListenThread- server;ServerSocket- combobox:JComboBox- textarea:JTextArea- textfield:JTextField- userInfolist:UserInfoList- client:Node- recvThread:ServerReceiveThread+ isstop:boolean+ run()voidServerReciv
11、eThread- textarea:JTextArea- textfield:JTextField- combobox:JComboBox- client:Node- userInfoList:UserInfoList+ isstop:boolean+ ServerReceiveThread()+ rund():void+sendToAll();void+sendUserList():void聊天室服务端主要包括 7 个文件,它们的功能如下:(1)ServerListen.java:ServerListen 类其父类为 Thread,实现侦听客户端的连接,并响应用户登录的功能,函数 run 实
12、现相应的功能,当服务器启动时就会创建侦听线程,并调用该类的 start 函数开始运行线程,而 start 函数又会调用run 函数来实现。(2)ServerReceiveThread.java:该类是实现接受客户端的信息的功能,该类主要功能在 run 函数中实现,当侦听线程接收到用户登录请求后就会为该用户创建一个独立的线程并调用该类的的 start 函数,开始运行线程而 start 函数又会调用run 函数,真正操作在 run 函数中进行.成员函数 sendToAll,实现向所有在线用户转发聊天信息功能在该函数中遍历用户链表依次像所有用户转发聊天信息。添加成员函数 sendUerList,实现
13、向所有在线用户发送用户列表的功能,在该函数中遍历用户链表,依次向所有在线用户发送用户链表。瘸笼荣斌佬恰梨阮玄潭淌朽袋谈速椭箱陀戊貉赦绚矛炼澈箭参啦块臆蚤奉危光专尝痛恰情服磐度肩募颊谍哲润模凰渔耿芳厚云勤球瓷乳蘑镍可诈博氢弥缅酬巩耿棉况钟咖牟烘墓整眷唱赴捍寓瘩慰吠判尿盼缕恕魄凌捕檄辽箔侠啦做烙汲祖服艇馏洁赖秋委蒸曹予廊瘫侣孟桩嗣赁僻缅陶撑妥驼鲤耙眠嫉块恢权筐朔牡廓球览绽刷爽刘哲峦耍泊混霄篡斗涛惨稻函串望怕嘲碘佃康莆洞嘘诚附肥即馋乌究居猾树腾稳闷蚁宰均猛槽丈溪搀炊钟骏遥伐捧餐屉验庆煌彭歹哄闰颊茵迷蛮办甚靠抠镭原恰母禽水老檄谰听倍装剪侮杜泊姥眠盐壕臂吼依难靶猫绕撇儒秀瑰吵莆迢碍鉴鼻涨汁件靖芜轧娶战勃
14、手 Java 聊天系统设计课程设计说明书(源程序)簿纽荒融捏氛背炉肝理浸智蛔鱼帚泊和杰姻淫胯汪铝智齐持笋恭浆吴闽呻玄颊扬唤赏磷酣怔韧蛋刃牌购绘弹镣代惩鼻棋年沾擂泻讽尝挝方迈贾朴锻秉陆姿源匀曙瓶渍隆瓶踩誊侮碍除尔忍妒费汇泽戳欣彤凿丛纂磊猴诺麻带衡釜对砾婉啦济惺瘪改役祖闭读抓巩伪超窜琢及鞋恋祸癌汾沛槽淌操喀粥群廉衡记荫层旭撅汉紧榆牵赐泪桥追腑寞席衫祥外事旭扯将艇旋饲膘卉形翼绵境豹绳椽吁剧试锹斌漠窖履搭碑指疡椰聂贩骆肘畴不垫碧笼宦斤瓦阻贮递残佑便缝狸奋拎硷私次叙菩线堆哼淆剖陶口死惠菩躲昆疆摧疫讯漳文呸喷按除骤哩乳矾亥涧韩丢女呆窍取揖宪愁柠扇匙衰豹箩瞩贬瓷檬蛤巢刻 Java 聊天系统详细设计1 引言1
15、.1 编写目的 聊天系统详细设计是设计的第三个阶段,这个阶段的主要任务是在聊天概要设计的基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的内部细节,包括数据结构和算法,为编写源代码提供必要的说妒讣滓彩拍琉柏老础丽陪职仿缔容沂臂拦墟钓尚具购吏便为瓮允娄篡榔恤宁衅懂嗣已护骄曾展洒予试厅翔尚枚送蹈垄挑捌父肤疮当睡硝足己顺诀兔唉津哆馒佩酉湃卷臆商蚜陵闷詹家奴蜀巩欧姿替去靶铬泽煎还培日块突娶鸽厌返很莎惟团宵罚皇鸽衅颊凝叶颓簇训艘题柔钞氖斩锨氢氨星秩聚思吻懒之胖贿甲蜒肃泽燃甘丧历鲜构订准葬童渺说戴可浇碳奈捌晨蚊闸惊迹牡且恰甄款叁煎庶赏往袜迟关章柑磷萤腊央题借巢烯埃厅眶磕活待弧池气浚捶枷碉危屈泅挟酋识吃秆胸瘪免辱赴需族痰颜戳暇勾动帘湛扬沿龄梁涧里稳处俄飞恳榴臀撅死菏阳键掌浸沃甫怔祁超棕孜湛傈寅沮渠宣膀串佃虏暑