- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
管理信息系统课程报告
题目:基与多人的网络聊天系统
学院:信息工程与自动化学院
专业:计算机科学与技术
学号:200910405117
姓名:保金权
目录
需求说明 4
一、 系统概述 4
二、 系统功能 4
1. 用户端 4
2. 服务器端 5
三、 系统部署 5
四、 其他约定 5
软件设计 7
一、 根据需求绘画用例图 7
二、 接口设计 8
三、 类中各方法和成员变量的设计 9
四、 数据库设计 13
编码实现 16
一、 服务器端 16
二、 用户端 17
1. 登陆窗口 17
2.聊天窗口 17
3.聊天记录窗口 18
测试 19
一、 单元测试 19
二、 集成测试 23
打包安装与发布 24
一、 打包 24
二、 安装发布说明 25
参考文献 27
需求说明
系统名称:基与多人的网络聊天系统
文档版本:1.0
编制日期:2012年4月13日
确认时间:2012年4月21日
系统概述
系统主要完成多人登陆,共同讨论、发言、聊天的功能,并提供聊天记录查询。
系统功能
用户端
用户登端
可视化界面显示登陆窗口,登陆界面应有用户名、服务器地址、端口号、登陆和重置按钮,并对需要输入的文本进行简单的检查,具体要求如下:
用户名允许使用任何可以显示的字符,不允许同名,不允许为空。
服务器必须使用正确ip地址,如果是本地可以使用Localhost代替,也不能为空。
端口号在1024至65535之间,不能为空。
用户聊天窗口
在用户登陆成功后显示聊天界面,聊天界面能看到在线的用户列表,聊天的消息显示应包括用户名、时间和内容,
自己发送的消息应能准确确认其他在线用户能否收到。如果服务器关闭,要提示用户退出。
聊天记录的显示
查看聊天记录时,应能看到是谁,在什么时候,发送了什么消息,也就是需要显示用户,时间,消息内容。
服务器端
显示服务器的运行状态,即服务器是否在运行,在启动服务器时能对监听的端口号进行为空,是否在1024至65535之间的检查,启动服务器之后能看到在线用户。
系统部署
序号 内容 约定 备注 1 系统结构 C/S客户服务器版 2 数据库 SQLServer 2008 3 开发语言 Java(V6.0) 5 系统平台 Win 7 旗舰版
其他约定
客户端与服务器之间的消息传递通过构建和解析XML进行,XML形式如下
?xml version=1.0 encoding=UTF-8?
message/message
根据需要进行添加,详细在设计处理。
软件设计
根据需求绘画用例图
根据用例图,初步设计类如下
类名 主要功能 Server 用户服务器端可视化的界面设计 Client 可视化登陆界面设计 ChatClient 客户端可视化聊天窗口界面的设计 ChatRecord 提供聊天记录的可视化界面 进一步分析发现应添加如下类:
类名 主要功能 ServerConnection 完成对客户端的连接 ServerMessage 完成和客户端进行消息的传递,并将消息写入数据库 ClientConnection 连接服务器并实现消息的传递 CharactUtil 对用户登陆服务器启动时的输入提供验证型方法 XMLUtil 构建和解析XML,以此判断发来的消息类型 ConnectionDB 连接、查询、更新数据库 综上所述:各主要类关系及设计如下
接口设计
类 提供的接口 ServerConnection public ServerConnection(Server server, int port) ServerMessage Public ServerMessage(Server server, Socket socket) Client public ClientConnection(Client client, String hostAddress, int port, String username) ClientRocord Public ChatRecord()
类中各方法和成员变量的设计
类 成员变量 功能 方法 功能 Server private JLabel jlabel1;
private JLabel jlabel2;
private JLabel jlabel3;
private JButton jbutton;
private JPanel jpanel1;
private JPanel jpanel2;
private JScrollPane jscrollpanel;
private JTextArea jtextArea1;
private JTextField jtextField1; 界面设计使用的组件 pub
文档评论(0)