java软件开发文档带图【荐】.docVIP

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java软件开发文档带图【荐】.doc

Java软件开发文档 名称:网络聊天室 开发人员:刘军令、刘晶 刘军令 09网络 2009011920 本系统是java基于c/s模式的聊天室程序。聊天室共分为服务器端和客户端两个部分,服务器端程序主要负责侦听客户端发来的消息,客户端需要登录到服务器端才能实现正常的聊天功能。 Socket(TCP)连接。Java API为处理套接口的通信提供了一个类java.net.Socket.,使得编写网络应用程序相对容易.服务器采用多线程以满足多用户的请求,并通过创建一个ServerSocket对象来监听来自客户的连接请求,默认端口为1001,然后无限循环调用accept()方法接受客户程序的连接。 客户端:客户通过Socket(InetAddress,port)建立与服务器的连接。服务器与客户都通过构造ObjectInputStream、PrintStream来建立输入输出流,然后双方通过该输入输出流来相互传递信息,一旦收到客户方的连接请求,服务器accept()方法返回一个新建的Socket对象。客户端然后向服务器发送消息,比如注册,登录等,服务器收到来自客户的请求后,针对不同的消息处理请求。 一、需求分析 为了满足人们网络聊天的需求,作为一个即时聊天系统,本程序需要实现的功能包括服务器端的功能和客户端的功能。其中服务器端需要能够处理用户注册、登录、聊天、监控聊天内容、过滤非法信息。客户端需要能够得到用户登录界面及结果、用户注册界面及结果、用户聊天界面及结果、用户退出功能。 本程序实现的功能有: 1、服务器端 a. 在特定端口上进行侦听,等待客户端连接。 c.可以向已经连接的客户端发送消息。 d.统计在线人数。 用户注册:首次登陆用户设置自己的昵称、密码、头像等个人信息 用户登陆:在服务端开启的情况下,已注册用户通过验证昵称、密码等信息与服务其进行连接登入聊天界面 用户接受和发送消息:通过与服务器的连接在线用户间进行群聊或私聊、发送信息并且接受到别的用户发送的消息 显示在线用户列表:显示所有登陆的用户列表 用户设置:根据用户需求进行字体等的设置 退出:关闭所有聊天并退出客户端 启动服务:启动服务器,并开始在设置的端口中监听,客户端用户可以登陆并开始聊天 退出服务:关闭服务器,监听结束,客户端不能再聊天 发送系统消息:服务器端给所有用户发送消息 显示消息记录:可以显示所有用户的聊天记录和上线、下线信息 用户管理:服务器端可以根据在线用户列表执行“踢人”操作 端口服务:开放特定端口1001进行服务 服务器端: AppServer.java为服务器端启动界面,负责监服务器的状态,在线人数,最多在线人数,服务器名称,访问协议,服务器IP,服务器端口以及用户信息的管理,日志的保存。 ServerFrame.java为服务器端程序界面,负责为服务器的启动提供界面服务。 Connection.java是连接服务器和客户端的桥梁,主要负责将客户端的信息传送给服务器,并将服务器端的信息反馈给客户端。 WordFilter.java负责将聊天过程中不合法的话语文件等过滤掉。 客户端: ChatClient.java为客户端程序启动类,负责客户端的启动和退出。 Login.java为客户端程序登陆界面,负责用户账号信息的验证与反馈 Register.java为客户端程序注册界面,负责用户账号信息的注册验证与反馈 Chatroom.java为客户端程序聊天室主界面,负责接收、发送聊天内容与服务器端的Connection.java合作 Clock.java为客户端程序的一个小程序,实现一个钟表的功能 三、主要模块的程序流程图 用户注册流程: 用户登陆流程: 用户聊天流程图: 总体流程图: 四、开发过程中遇到的主要问题及解决方法 1、怎样使服务器端能够设置登录聊天室的上线最多人数 解决方法:经过思考要实现这个功能首先要使服务器端能够响应键盘的编辑,然后在客户登录时读取服务器端编辑的最大人数值并用if语句加以判断是否超过人数上限来决定能否登陆。具体代码如下:ServerFrame.java: Connection.java在ServerLogin()方法中添加if语句如下: 2、怎样实现键盘快捷键功能 解决方法:通过查类库手册知道可以用javax.swing.AbstractButton中的setMnemonic()方法设置当前模型上的键盘助记符。助记符是某种键,组合时将激活此按钮。 助记符不区分大小写,所以具有相应键代码的键事件将造成按钮被激活,不管是否按下 Shift 修饰符。如果在按钮的标签字符串中发现由助记符定义的字符,则第一个出现的助记符将是带下划线的,以向用户指示该助记符。 JOptionPane 有助于方便地弹出要求用户提供值或向其发出通知的

您可能关注的文档

文档评论(0)

cnsg + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档