《Java课程设计》需求分析文档要求.docx
《《Java课程设计》需求分析文档要求.docx》由会员分享,可在线阅读,更多相关《《Java课程设计》需求分析文档要求.docx(19页珍藏版)》请在三一办公上搜索。
1、目录1. 选题背景12. 开发技术概述13. 功能需求分析14. 功能设计24.1登录界面功能表24.2注册界面功能表34.3聊天界面功能表44.4文件功能表55. 系统流程分析55.1系统总体设计流程图55.2详细设计流程图66. 界面设计96.1登录界面96.2注册界面96.3聊天界面107. 系统测试118. 关键代码说明13小结16参考文献171. 选题背景在网络越来越发达的今天,人们对网络的依赖越来越多,越来越离不开网络,由此而 产生的聊天工具越来越多.目前国内外做即时通讯软件的公司很多,产品也琳琅满目,国内 有诸如腾讯QQ、新浪UC、网易泡泡、淘宝旺旺等,国外有著名的MSN (新版
2、改名为Live Messenger)以及跨平台的米聊等。QQ是国内即时通讯软件市场上无可争议的“老 大”,您使用QQ可以与好友交流,信息及时发送,及时回复,收发及时功能全面。QQ与国 外最大的即时通讯软件MSN功能强大,但它们唯一不足的地方就是必须要联网或者下载到 它们的服务端,否则无法脱离Internet使用。本聊天系统,是可以在局域网聊天的一个工具。无需联网,即可进行群聊。所以也存 在局限性,只有在同一局域网内的用户才能聊天交流,除此之外,该系统未设置私聊功能。2. 开发技术概述本系统采用java技术开发,使用文件保存数据,集成开发环境使用eclipse。开发者 应有java程序设计语言、
3、SWING基本GUI组件、多线程、文件使用、socket编程、使用eclipse 的基本知识和技能。系统采用两层c/s体系结构,c端负责通过GUI与客户交互,实现注册、 登录、收发信息、退出等功能;c端和s端是通过网络交互的。首先服务器启动,建立一个专门用于接收客户端请求的”倾听Socket”,然后等待客 户的连接请求。当客户想聊天时,从界面输入信息,然后与服务器建立Socket连接,服务 器端的“倾听Socket”收到连接请求后,一般会接收连接请求,并生成一个服务器端socket, 专门负责与此客户端socket的通信。一旦连接请求成功,通过I/O流来实现数据的输入输 出。用多线程来实现多人
4、聊天功能。3. 功能需求分析使得第一次使用的用户可以通过填写个人信息来注册,已注册用户可以在验证他的登 录信息后登录,允许在线用户查看其他在线用户的列表,允许用户在公共聊天室中聊天。 客户端和用户端的需求如下:a. 客户端(1)用户注册界面及结果(2)用户登录界面及结果(3)用户发送信息及结果(4)用户得到信息及结果(5)用户退出界面及结果b. 服务器端(1)处理用户注册(2)处理用户登录(3)处理用户发送信息(4)处理用户退出(5)保存服务器日志(6)保存用户聊天信息4. 功能设计4.1登录界面功能表表4-1登录功能表序号功能内容控件对象名备注1.用户名输入框JTextFieldtextfi
5、eld2.密码输入框JPasswordFieldpassword3.登录JButtonbl4.取消JButtonb25.注册JButtonb36.存放组件的容器JPanelP1存放bl b2 b37.盒式容器BoxbaseBox存 boxl box28.盒式容器Boxbox1 box29.标签JLabel标记用户名密码表4-2注册功能表序号功能内容控件对象名备注1.用户名输入框TextFieldtextfield12.密码输入框TextFieldPw13.确认密码输入框TextFieldPw24.年龄输入框TextFieldtextfield25.复选框男JCheckBoxC1选定6.复选框女
6、JCheckBoxC27.注册按钮JButtonbsubmit8.取消按钮JButtonbcancel9.存放组件的容器JPanelP1存放信息10.存放组件的容器JPanelP2存放两个提交取消按钮11.存放组件的容器JPanelP3存放性别选项4.3聊天界面功能表表4-3聊天功能表序号功能内容控件对象名备注12.聊天内容显示框TextAreatextareaMessage13.用户列表显示框TextAreatextareaList14.发送内容输入框TextFieldtextfield15.用户列表标签JLabeluserlist16.聊天室标签JLabelchatroom17.退出按钮J
7、Buttonbuttonout18.发送按钮JButtonbuttonsent19.存放组件的容器JPanelpanelout存放退出按钮20.存放组件的容器JPanelp21.显示指定组件内容JScrollPanemessagepaneltextareaMes sage22.显示指定组件内容JScrollPanelistpaneltextareaLis t23.显示指定组件内容JScrollPanesendpaneltextfield24.格式布局GridBagLayout()25.GridBagLayout 类布直的 组件的约束GridBagConstraintsbgc4.4文件功能表表4
8、-4文件功能表序号功能内容控件对象名备注1.指定流里面读取对象ObjectInputSt reambr2.从流里读取内容getInputStrea m3.文件写PrintWriterpw4.读对象readObject5.客户端套接字SocketfromClient建立连接6.服务器端套接字ServerSocketserver建立连接5. 系统流程分析5.1系统总体设计流程图聊天应用程序包括登录界面和注册界面,当启动登录界面,用户填写信息后登录,登录的 信息将反馈给聊天服务器,服务器验证用户信息,若验证成功则跳到聊天界面,否则,服务器 反馈给登录界面拒绝登录消息。启动注册界面,用户在界面填写注册
9、信息,注册信息反馈给服 务器,服务器要验证用户信息,验证成功,跳到登录界面,否则,服务器反馈给注册界面,显 示错误消息。图5-1系统总体流程图5.2详细设计流程图1.服务器结构服务器端,处理用户的请求,当收到“来自定时器”消息时服务器给客户反馈,客户端在 聊天界面更新消息和在线用户信息;服务器收到“登录信息”请求时验证登录信息,验证成功 则更新聊天界面里的消息和在线用户信息,否则给客户端反馈“用户不存在”消息;当服务器 端接收到“注册消息”请求时,服务器验证注册信息,若验证成功,将注册信息写入文件保存, 并反馈给客户端“注册成功”信息,跳到登录界面,否则在注册界面给客户端反馈“用户已经 存在”
10、消息。图5-2服务器结构流程图2.客户端结构登录界面,将登录消息发送给聊天服务器,聊天服务器验证登录消息,如果验证成功将“欢 迎”消息发送给登录界面,登录界面向用户显示聊天界面;如果验证不成功,则将拒绝消息发 送给登录界面,登录界面显示错误对话框。注册界面,同登录界面。开始证登录信息结束否是聊天服务器将拒绝登录消息发送给登录界面将“欢迎”消息发送给登录界面将登录信息发送给聊天服务器登录界面显示错误对话框登录界面向用户显示聊天界面登录界面图5-3登录界面流程图聊天界面,服务器接收“来自定时器”的消息,随时更新消息和在线用户信息,若用户 在聊天界面中单击“发送”按钮,服务器接收用户“发送”请求,服
11、务器将用户的发送信 息保存,向聊天界面,若用户退出,服务器收到用户“用户退出”请求,将在线列表中删 除用户,并更新聊天界面里的消息和在线用户信息。图5-4聊天界面流程图6. 界面设计6.1登录界面运行Login.java程序会出现如下界面。图6-1登录界面6.2注册界面运行Resigter.java可出现如下界面,注册信息时,用户名不能为中文,程序采用了 RandomAccessFile来随机读取文件,为单独设置类来处理中文字符,用户若注册用户名信 息含有中文将无法读取,尽管注册成功,登录时将报错:用户名或密码错误。6.3聊天界面用户先注册,在登录,登录成功可以出现如下界面。图6-3聊天界面7
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java课程设计 Java 课程设计 需求 分析 文档 要求
链接地址:https://www.31ppt.com/p-4927223.html