

目录
第一部分 项目概况
1.项目说明………………………………………………………………………..4
2.项目背景………………………………………………………………………..4
第二部分 项目计划
1. 项目目标……………………………………………………………… ………4
2. 项目范围……………………………………………………………… ………4
3. 项目策略……………………………………………………………… ………4
4. 项目开发周期………………………………………………………… ………4
5. 每项任务所需技能…………………………………………………… ……. ..5
6. 所采用的工具和技术清单…………………………………………………….5
第三部分 项目设计
1 需求分析……………………………………………………………………….5
2 软件功能……………………………………………………………………….5
3 概要设计……………………………………………………………………….6
4 详细设计……………………………………………………………………….6
第四部分 项目测试
1. 测试阶段
2.程序界面.…………………………………………………………………7
3.程序运行的条件
4.参考的资料
第五部分 活动总结
第一部分 项目概况
1.项目说明
项目名称:JAVA聊天室系统。
客 户:一般大众。
2、项目背景
软件学院两年多的办学历程中,采用了印度NIIT的先进教学法,学生从中极大地提高了专业知识能力,对于学生的动手能力也得到了明显的提高。为了进一步地考察学生的专业知识能力,让其能够明确自我专业知识水平,提高学习的兴趣,弄清专业发展方向,为以后的就业打好基础,现特向我院领导申请举办软件学院首届“软件科技月”活动。本次活动面向全校计算机爱好者,并且与成都多所高校及IT企业联合开展系列活动。活动以软件学院学生为主体对象,主张“接触IT企业,明确专业方向,苦修专业知识”。
第二部分 项目计划
1. 项目目标
(1),允许新用户注册,同时开设帐户。
(2),允许用户进行在线的公聊和私聊。
(3),可以创建留言版面并且留言。
(4),允许用户创建私人包间、查找包间并且在包间内聊天。
(5),可通过帐户ID号对用户资料进行查询。
(6),友好的欢迎界面并显示上次登陆时间。
2. 项目范围
本软件适用于一般大众。
3. 项目策略
通过可视化编程的JAVA程序和SQL数据库的方式进行实现。
通过增量开发的方法进行此项目的设计与开发。
使用套节字进行客户与服务端的通讯。
4.项目开发周期
第一周 |
需求分析及初步设计阶段(决定每个功能所需的类及数据类型) |
第二周 |
根据相应功能设计出各类所用到的方法及数据类型 |
第三周 |
具体实现各个类中的各个方法 |
第四周 |
对各个界面和服务器进行调整及测试完善工作 |
5. 每项任务所需技能
数据库建立:熟练的SQL数据库编程。
服务端与客户端的连接:熟悉网络编程中的协议及数据流
程序界面设计:可视化编程技能。
代码实现:JAVA与数据库编程。
6. 所采用的工具
开发工具:Microsoft JAVALE(jdk1.3)+ Microsoft SQL Server
开发环境:windows2000+个人电脑
第三部分 项目设计
1.需求分析
随着经济的日益发展,网络的观念深入人心。人们越来越需要通过网络高效简捷的交流,聊天室就是其中的一个工具。
2.软件主要功能
(1),允许新用户注册,同时开设帐户。
(2),允许用户进行在线的公聊和私聊。
(3),可以创建留言版面并且留言。
(4),允许用户创建私人包间、查找包间并且在包间内聊天。
(5),可通过帐户ID号对用户资料进行查询。
(6),友好的欢迎界面并显示上次登陆时间。
程序中要用到的类
1、客户端
BaojianNew >>创建包间 |
BaoJianFind >>查找包间加入包间 |
BaoJianEnter >>进入包间 |
BaoJianQu >>包间区聊天 |
NewPanel >>界面背景图处理 |
PrivateMessage >>私聊功能 |
UserFind >> 查找用户功能 |
Register >> 注册功能 |
EnterGUI >> 登陆功能 |
ChatRoom >> 公共聊天功能 |
LiuYan >>留言板 |
SocketConstants>>接口(包含服务端IP地址,以及自定义端口号#6655) |
2、服务端
Server >>处理聊天内容 |
三、设计细节与构造
(一) 编写服务端程序
(1) 问题陈述
需要在JAVA中开发一个中间层服务器应用程序,其功能如下:
a.接受用户注册信息并保存在一个表中(需连接数据库).
b.执行用户的设定的查找功能.
c.能够允许注册过的用户登陆聊天界面并可以聊天.
d.能够接受私聊信息并发送给特定的用户
e.能够接受用户创建的包间信息并保存到一张表中BaoJian
f.能够允许用户查找,登陆,加入包间并进行聊天
g.能够接受用户的留言,并保存到以用户名为文件名的文件内
h.服务器运行在自定义的端口上#1001.
(2) 计划解答
a. 选择创建网络服务器应用程序所需引用的类和方法。
b、确定用户自定义的类、他们的目的、方法。
c、确定用户自定义的类中的数据类型和变量。
d、确定服务器的IP地址和端口号。
e、确定何时连接到数据库中。
f、确定查询参数。
g、确定要处理的例外。
h、确定例外的出错信息。
任务a. 选择创建网络服务器应用程序所需引用的类和方法。
任务 |
解答来源 |
结果 |
|
选择创建网络服务器应用程序所需引用的类和方法。 |
|
类 |
方法 |
Serversocket |
accept () |
||
Thread |
Start(),run() |
||
Socket |
getInputStream(),getOutputstream() |
||
ObjectInputStream |
readObject() |
||
ObjectOutputStream |
writeObject() |
||
BufferedReader |
readLine() |
||
Vector
|
addElement(),removeElement() |
||
|
|||
|
任务b、确定用户自定义的类、他们的目的、方法。
任务 |
解答来源 |
结果 |
||
确定用户自定义的类、他们的目的、方法。 |
|
类 |
目的 |
方法 |
Serversocket |
监听客户请求 |
run(), ServerSocket() |
||
Connect |
处理客户端的各种操作 |
Connect(),enter(),register(),find() send(), enter(), time() |
||
Members |
保留申请人信息 |
|
||
BaoJian |
保留包间信息 |
|
||
Applicant |
保留留言信息 |
|
任务c、确定用户自定义的类中的数据类型和变量。
任务 |