【Jsp精品源码栏目提醒】:网学会员为需要Jsp精品源码的朋友们搜集整理了【精品】网络聊天室(CS)模式 - 互联网相关资料,希望对各位网友有所帮助!
批注 IU1: 页数在 6 页
Java 课程设计报告题 目
网络聊天室C/S 模式 所在院系 软件学院 学生姓名 孙丕军 专 业 机械
软件 班 级 R 机 械 085 学 号 0818030512 2009 年 7 月 17 日 大连交通大学 JAVA 课程设计报告 第一章 总体设计1.1 本系统的主要功能 批注 IU2: 简单介绍你系统的功能 本系统设计 C/S 模式的网络聊天室,即使用客户端的 JAVA 应用程序 也即 JAVA 课程设计书中的设计内容和服务器进行
通信.1.2
系统包含的类及类之间的关系 批注 IU3: 也即几个 JAVA 源文件, 本系统共包括 12 个 java 源文件。
参照书的第一页 如图 1-1 所示。
CHATCLIENT USERCONF HELP CONNECTC CLIENTRE ONF CEIVE -1- 大连交通大学 JAVA 课程设计报告 CHATSERV ER HELP NODE USERLINK PORTCONF SERVERRE SERVERLIS LIST CEIVE TEN 批注 IU4: 类似 JAVA 课程设计书中 图 1-1 类之间依赖的关系 的 2 页的图,5 号字2.2 java 源文件及其功能 客户端:HELP.JAVA 该文件生成的类负责创建一个帮助对话框。
当用户不知怎么使用时,可以从这获得帮助。
用户可以用 mouse 点击菜单栏上的帮助H选项,也可以按下快捷键 CtrlH 来显示帮助对话框。
USERCONF.JAVA 该文件生成的类负责用来设置用户昵称的。
默认的为匆匆过客。
可以通过点击工具栏上的用户设置,也可以点击菜单栏上的设置中的用户设置来弹出用户设置对话框。
当提交时,按下保存时,若没有输入或输入的字符超过 15 字符时,均为无效输入。
-2- 大连交通大学 JAVA 课程设计报告CONNECTCONF.JAVA 该类负责生成一个连接对话框。
让用户输入服务器的 IP 地址和要连接的端口号。
以便与服务器连接。
连接 IP 时,由于我们的服务器和客户端均在同一台机器上, 端口号必须是在 0—65535 所以 IP 可以是 127.0.0.1。
之间的一个数。
上面两者均为正确时,才算是连接设置是正确的。
否则会弹出一个错误对话框。
CLIENTRECEIVE.JAVA 该类为客户端的消息收发类,单独把它作为一个类,是因为这样可以为每一个用户启动一个线程。
避免在一个主线程中引起堵塞。
在 run方法中包括了对服务器发来的消息的处理。
CHATCLIENT.JAVA客户端主类 该类为客户端的主类。
与服务器进行通话时,需要启动这个文件。
该类包括了一个复杂的 GUI 界面的
设计。
对菜单栏上的选项都设有快捷键。
当所有工作都准备好了之后,点击登录。
即可启动一个连接服务器的线程。
与服务器进行会话。
若有多个用户想要参与会话,可以启动多个 CHATCLIENT。
每一个用户将有一个自己的聊天界面。
用户可以相互之间聊,也可以与某一个人进行私聊。
若想换一个名字进行聊天,可以点击注销,然后重新设置用户名来聊天。
服务器端:HELP.JAVA 该类与客户端的 HELP.JAVA 类大致一样的。
在显示的内容块有一点不同而已。
PORTCONF.JAVA 这个类是一个端口配置类,有服务器设置一个监听端口。
让用户连接。
但端口必须正确,也就是就端口应是在 0—65535 之间的一个数。
且与用户连接时设置的端口必须一致。
NODE.JAVA 该类是 用户链表的结点类,它把用户的名字,socketObjectOutputStreamObjectOutStream.封装在一起。
为后面使用用户链表做准备。
有利于后面
工作的简单。
USERLINKLIST.JAVA 本类并没有使用 JDK 自带包中的数据结构类,而是自己将 -3- 大连交通大学 JAVA
课程设计报告其封装,构成单链表。
其中包括有初始化表,添加结点,删除结点,返回结点数,还提供了按索引,用户名来查找。
SERVERLISTEN.JAVA 该类是用在服务器端的用户监听类,当有用户连接上了,它会更新必要信息。
如向 comboboxtextArea 等更新信息。
且为用户启动单独的一个用户线程。
SERVERRECEIVE.JAVA 这个类是服务器端的一个收发消息的类,主要是处理用户发来的消息,这里有决定是向个人,还是所有人发送消息的方法。
与客户端的 CLIENTRECEIVE 类似。
CHATSERVER.JAVA服务器端的主类 这是服务器端的主类。
它的界面与客户的主类界面类似。
主要包括有:端口设置,启动服务(均在工具栏)等。
负责启动用户线程,在线程中和用户交流信息,如果用户提交了公共信息,就发给所有用户,否则就发给指定的用户。
-4- 大连交通大学 JAVA 课程设计
报告 第二章 详细设计2.1 服务器端主类: CHATSERVER.JAVA (1)成员变量见表 2-1 表 2-1 主要成员变量(属性) 批注 IU5: 写几个变量即可 成员变量描述 变量类型 名称 服务器端的侦听端 int port 口 服务器的 socket ServerSocket serversocket 选择发送消息的接 JComboBox combobox 收者 服务端的信息显示 JTextArea messageShow (2)方法见表 2-2 表 2-2 主要方法 批注 IU6: 写几个方法即可 功能描述 方法名 备注 初始化
程序 init CHATSERVER 构造方法 actionPerformedAc