Java聊天室系统项目设计书.doc
文本预览下载声明
Java聊天室系统项目设计书
第一部分 项目概况
1.项目说明
项目名称:JAVA聊天室系统。
客 户:一般大众。
2、项目背景
NIIT的课程重在对实际动手能力的培养。通过一段时间JAVA课程的学习,需要对所学的知识作一个综合的运用。由于JAVA强大的网络编程能力,需要写一个简单的聊天室程序的项目,主要能实现在网络上的多线程间的通讯。项目的目的在于巩固前段时间所学的知识以及锻炼小组成员之间团队合作的能力。
第二部分 项目计划
1. 项目目标
(1),允许新用户注册,同时开设帐户。
(2),登陆后在用户列表框显示所有的用户姓名。
(3),允许用户进行在线的公聊和私聊。
(4),把客户端的界面放在Applet上面,在聊天时可以对面版进行一些简单设置。
2. 项目范围
本软件适用于一般大众。
3. 项目策略
通过可视化编程的JAVA程序的方式进行实现。
通过增量开发的方法进行此项目的设计与开发。
使用套节字进行客户与服务端的通讯。
4.项目开发周期
第一天
需求分析及初步设计阶段(决定每个功能所需的类及数据类型)
第二天
根据相应功能设计出各类所用到的方法及数据类型
第三天~第五天
具体实现各个类中的各个方法
第六天
对各个界面和服务器进行调整及测试完善工作
5. 每项任务所需技能
服务端与客户端的连接:网络编程中的协议及数据流,异常处理,多线程。
程序界面设计:GUI图形用户组件,布局管理,事件监听。
代码实现:JAVA与数据库编程。
6. 所采用的工具
开发工具:Microsoft JAVALE(jdk1.4)+ JCreator LE
开发环境:windowsXP+个人电脑
第三部分 项目设计
1.需求分析
随着经济的日益发展,网络的观念深入人心。人们越来越需要通过网络高效简捷的交流,聊天室就是其中的一个工具。
2.软件主要功能
(1),允许新用户注册,同时开设帐户。
(2),登陆后在用户列表框显示所有的用户姓名。
(3),允许用户进行在线的公聊和私聊。
(4),把客户端的界面放在Applet上面,在聊天时可以对面版进行一些简单设置。
程序中要用到的类
客户端
2、服务器端
3 概要设计
聊天室的程序至少需要建立两个程序:
一个服务器端,负责监听客户端发送过来的请求,一但监听到客户端的请求,先判断它是登陆信息还是聊天信息,若是登陆信息,那么允许客户端登陆,并把登陆的客户名返回给客户端显示在用户在线列表框内。如果是聊天信息,则把它群发给每个客户端。服务器端不对聊天的信息作公聊和私聊的判断,由客户端收到消息后判断是否是发给自己的信息,以及是否显示在聊天面板上面。
客户端的程序需要运用图形化编程做出一个界面。我们小组所做的界面是在聊天室界面的左上方为一个在线用户列表框,列表框的下面有用户登陆的文本域和密码输入框。右边是聊天面板,聊天面板的下面是输入聊天信息的文本域,以及发送和清空按纽。当输入用户名和密码登陆后,在用户列表框内会显示当前在线的所有的用户姓名并且在聊天面板上显示某用户进入了聊天室。然后屏蔽掉登陆和密码输入框。在信息输入框中输入聊天信息后点击发送,在所有客户端的聊天面板上会看到你发送的聊天信息。在用户列表框选择某个用户,勾选私聊复选框然后发送消息,这时只有被你选择的客户端能看到你发送的信息。
4 详细设计
服务器端代码:
//聊天室服务器端程序
import java.io.*;
import java.net.*;
import java.util.*;
public class Homework implements Runnable{
Thread thread;
static Vector vector;
ServerSocket server;
public Homework(){
try{
server=new ServerSocket(8000);
System.out.println(服务器已启动);
}catch(IOException e){
}
vector=new Vector(100);
thread=new Thread(this);
thread.start();
}
public void run(){
try{
while(true){
Socket socket=server.ac
显示全部