Oava程序设计》项目设计报告

上传人:gg****m 文档编号:233897354 上传时间:2022-01-03 格式:DOCX 页数:12 大小:403.82KB
返回 下载 相关 举报
Oava程序设计》项目设计报告_第1页
第1页 / 共12页
Oava程序设计》项目设计报告_第2页
第2页 / 共12页
Oava程序设计》项目设计报告_第3页
第3页 / 共12页
Oava程序设计》项目设计报告_第4页
第4页 / 共12页
Oava程序设计》项目设计报告_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《Oava程序设计》项目设计报告》由会员分享,可在线阅读,更多相关《Oava程序设计》项目设计报告(12页珍藏版)》请在金锄头文库上搜索。

1、Oava程序设计项目设计报告(2011 2012学年第2学期)题目:专业:班级:姓名:基于聊天室计算机科学与技术指导教师:成 绩:计算机科学与技术系2012 年一项目设计总体目标本项H实训是在学生自学完Java程序设计实用教程之后安排的综合实践训 练,通过项H综合实训,使学生在掌握Java语言的计基本知识的基础上,加深 学生对所学知识的理解,提高学生的综合应用能力和解决实际问题的能力。二.系统总体设计1聊天室结构图(服务器与客户端是一对多的关系):2 聊天室系统功能介绍:(1)服务器端可以实时显示客户端的用户列表,半用户丄线或者下线时,都会 自动刷新(2)服务器端可以实吋显示用户聊天室信息,管

2、理员对于发表非法言论或无理 取闹者踢出聊天室,器管理员通过公告栏发送一些公告信息,服务器管理员 也可以参与聊天窣的聊天(3)客户端显示所有的在线客户信息(4)客户端可以向所有在线客户发送信息(聊天室里)和显示所有客户发送的 群信息(聊天室里)客户可以选择其他客户进行私聊,输入信息发送给对方,可以通过截屏发送 给对方,对方可以接收截屏信息,可以选择文件发送给对方,对方可以接收 文件信息,客户可以选择音乐文件进行播放(5)客户不想聊时可以退出聊天室2.功能需求与程序模块的对应关系:需求模块用户登入Login用户注册Register显示在线用户FriendsTree聊天室(管理员默认加入)Serve

3、rChatRoom, ClientChatRoom私聊PrivateChat截图PritScreen发送文件、接收文件FileSend,FileReceive播放音乐MusicPlayer显示在线与不在线用户列表(服务端)UserTree数据库交互模块ServerDaoTmpl三用户登入和用户注册:1 用户注册和用户登入的流程图:用户注册用户登入界而(登入、注册)使用到Swing技术;随着模仿QQ,实现简单的qq功能: 注册、登陆、聊天功能。运行服务器端,再运行客户端出现如(图1)的登入界 面,单击注册,进入如(图2)的登入界面。用户注册吋,注册的信息会保留在 userdata信息表中,(图2

4、-1),实验中使用的数据库database是Access数据库, 只有当输入的账号与密码和userdata信息表中的一致吋才能登入,否则提示账号或密码输入错误。图1登录的代码:public void login ()try String message = in.readUTF ();StringTokenizer st = new StringTokenizer(message,HIn);String str = st-nextToken ();if (str.equals(success”)this setVisible(false);thisdispose ();FriendsTree

5、frind = newFriendsTree(st.nextToken ()f this.socket);frind-setVisible(true); else if (str . equals ( Herror,f) )JOptionPane . showMessageDialog (this,用户名或密码错误”,”错误“ ,JOptionPane WARN工NG_MESSAGE);textField.setText ( n); passwordField.setText ( n n); else if (str.equals(nresetLoginn)JOptionPane showMe

6、ssageDialog (this f 该账丿勺已经 登录”,“提示JJOptionPane WARNING_MESSAGE); uatch (IOException e) e.printStackTrace();图2判断注册是否成功的代码:public void register()try String message = inreadUTF ();StringTokenizer st = new StringTokenizer(message, n In);String str = st.nextToken();if (str . equals (,f success11) )JOpt i

7、onPane . showMessageDialog (this,注川J成功” r成功” ,JOptionPane WARN 1:NG_MESSAGE);thisdispose ();Jelse if (str.equals(nusernameRepeatn)JOptionPane . showMessageDialog (this r 账户己经被注册”注册失败”,JOptionPane WARNING_MESSAGE);else if (str . equals (ffnameRepeatn ) )JOpt ionPane . showMessageDialog (thisr 该昵称己经被注

8、册,寫, JOptionPane . WARNING_MESSAGE);Jelseif (str.equals(error”)JOptionPane(this, “注册失败“错误”,JOptionPane WARNING_MESSAGE); catch (IOException e) e.printStackTrace();user data :idNameUsernameGenderEmailPasswordBirthday1000XXXXXXaaaaaaWeereQqq. com1111111970-6-61001haihaihhhhhhWuyyty163. com1111111986-7

9、-11002hhhhhhrtetrrttrtrrttrWtrr777777771999-1-110038778huyhyyufgffgfggfgfWyttyrtytyeee. cmin1970-1-11004111111qqqqqqWweqq. com2222221970-1-1100522222222222M222222221970-1-11006111111111111Mluuhgg. com1111111970-1-11007PPPPPPyyyyyyMddds163. com2222221970-1-11008希希ppppppMwwweqq. com1111111970-1-11009茂

10、茂zzzzzzMmin1970-1-11010小宇宇ttttttMgggh163. comlinn1970-1-1_J图2-1四.聊天室和显示在线用户的设计:登入后,进入聊天室界而,(图3)有三个客户端登入了聊天室,可以显示 在线的用户,在新用户上线和用户下线时要更新每个客户端在线用户列表名,且 可以和在线的用户实现一对一的私聊功能。(图4)为服务器的已登入界面,服 务器端实吋显示在线用户,只要客户端用户点击聊天室,就能进入聊天室,在聊 天室中大家可以随便聊天,管理员可以通过公告栏通知消息。个人中心鞋、在线用户小宇宇希希个人中心个人中心3离线用户问猩聊天室:欢迎大赢的到来! !天室成员/管理员

11、在线用户小宇宇希希希希茂茂茂茂AG茂茂:23:41:50大家好啊五.私聊:私聊流程图:茂茂:23:41:56我是茂茂 管理员23:42:23欢迎你加入阿狸聊天室 希希:23:42:41很高兴认识大家 希希23:42:48我是希希 1:23:43:15小宇宇用户选择其他用户输入信息发送信息客户端之间可以进行私聊,(图5)用户小宇宇与茂茂之间的聊天信息,两者之间还可以发送文件、接收文件(图6)、截图、选择音乐进行播放(图7)图5私聊的代码:public void mouseClicked(MouseEvent e) DefaultMutableTreeNode user_node = (Defau

12、ltMutableTreeNode) tree.getLastSelectedPathComponent ();if (egetClickCount () = 2 & user_node.isLeaf()online_name = new String(user_nodetoString();if (online_name equals (在线用户| n ) & user_nodeisLeaf ()JOpt ionPane . showMessageDialog (thsr 暂尢在线用丿f ”警告 r JOptionPane . WARNINGMESSAGE); else if (chat.g

13、et (online_name) = null) pri = new PrivateChat(online_name name this.socket);chat.put(online_namez pri);prisetVisible(true); else JOpt ionPane . showMessageDialog (thsr 伤l已经与 ” +online_name+ 在聊天”,警告,JOptionPane WARN 1:NG_MESSAGE);prisetVisible(true);文件传送查看:I Rainbow.setti ngs bin src .classpath .project db.properties music.txt notice.txtgj Rainbow.properties 画 socket.properties

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号