java实训项目设计文档.docx
- 文档编号:11919214
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:15
- 大小:1.85MB
java实训项目设计文档.docx
《java实训项目设计文档.docx》由会员分享,可在线阅读,更多相关《java实训项目设计文档.docx(15页珍藏版)》请在冰豆网上搜索。
java实训项目设计文档
微博系统实训项目设计
——基于JSP技术的微博设计与实现
Mail项目小组
组员:
刘金兰、白皓、程清、许啸、王正辉
第一章绪论
随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,以及互联网的深入人心。
互联网产品越来越影响着人们的生活。
我们的日常生活已经和互联网紧密的联系在了一起。
1.1选题背景
随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,以及互联网的深入人心。
互联网产品越来越影响着人们的生活。
我们的日常生活已经和互联网紧密的联系在了一起。
如上所说,互联网在我们生活中扮演这重要的角色,微博就一个典型的例子,微博是一种互动及传播性极快的工具,传播速度甚至比媒体还要快。
微博所谓“微型博客(micro-bloging)”是一种非正式的迷你型博客,它是最近新兴起的一个web2.0表现,是一种可以即时发布消息的类似博客的系统。
它最大的特点就是集成化和开放化,你可以通过你的手机,IM软件(gtalk,MSN,QQ,skype)和外部API接口等途径向你的微博客发布消息。
微博客的另一个特点还在于这个“微”字,一般发布的消息只能是只言片语,像Twitter这样的微博客平台,每次只能发送140个字符。
相对于强调版面布置的来说,微博的内容组成只是由简单的只言片语组成,从这个角度来说,对用户的技术要求门槛很低,而且在语言的编排组织上,没有博客那么高,只需要反映自己的心情,不需要长篇大论,更新起来也方便,和博客比起来,字数也有所限制微博开通的多种API使得大量的用户可以通过手机、网络等方式来即时更新自己的个人信息。
此数据库是有关微博网站的后台数据库,以实现用户发布状态,用户相互间的关注,管理员管理状态的数据库。
第二章项目分析
项目分析就是在微博系统开发的生命周期中系统分析阶段的各项活动和方法。
它的主要目标是在系统规划所定的某个开发项目范围内明确系统开发的目标和用户的信息需求,提出系统的逻辑方案。
系统分析在整个系统开发过程中,是要解决“做什么”的问题,把要解决哪些问题、要满足用户哪些具体的信息需求调查、分析清楚,从逻辑上或从功能需求上提出系统的方案,即“逻辑模型”。
2.1微博需求分析
微博系统需要满足如下需求:
(1)用户发布微博,字数在140内,并及时显示。
(2)粉丝可以及时看到自己所关注人的微博,并与之互动。
(3)用户自主选择自己的关注对象,并可自己发起话题,邀请自己的粉丝与之共同参与进来。
(4)名人微博加V认证。
(5)用户发布信息符合《国家信息安全法》。
2.2微博功能分析
基于系统需求分析,该系统需要实现以下基本功能,下面分别对一些主要功能模块进行介绍。
(1)用户管理
●所有用户:
管理员可以通过该功能查询所有用户的信息,包括性别、电话、邮箱、昵称、微博、粉丝、住址。
并且可以对每条信息记录进行修改。
●话题:
管理员可以通过该功能查询已有话题,并且可以进行修改和删除。
●新增选项:
管理员可以通过该功能新增加一条审批项目。
(2)用户统计
用户统计:
可以通过该功能查看整个微博的用户数量、信息、及状态,以报表形式展示,并且可以进行打印。
(3)信息管理
●信息管理:
管理员可以通过该功能查看该系统所有微博的信息,并且可以修改微博大部分信息,可以对无效的微博或信息进行删除处理。
●新增信息:
管理员可以通过该为新微博添加数据。
(4)话题管理
●新增话题:
用户可以通过该功能在系统中添加一个新话题。
●话题管理:
用户可以修正话题的名称等信息,并且可以把用户已经撤销的话题在系统中删除。
(5)用户登录/退出
●用户登录:
验证用户名密码,并且将用户部分信息临时储存在服务器中以便使用。
●权限验证:
通过用户登录名验证权限,分配给用户不同的界面和菜单。
●用户退出:
删除用户在服务器中的临时信息。
第三章微博概要设计
微博设计阶段的主要任务是将需求分析阶段所总结出来的反映了用户需求的系统逻辑模型转换成可以实施的物理模型,主要解决如何去做的问题。
3.1系统功能结构设计
根据需求分析结果,本系统分为如下模块:
登录模块、用户管理模块、微博统计模块、话题管理模块。
如3-1图所示。
图3-1系统功能结构图
3.2数据字典
数据字典的作用主要是对数据流程图中的数据项,数据结构,数据流,处理逻辑,数据存储和外部实体等方面进行具体的定义。
建立数据字典的目的是为了保证全局数据的一致性和准确性。
数据字典配以数据流程图就可以从图形和文字两方面对系统做出完整的定义和描述。
3.2.1数据库设计
相关数据库表说明如下:
序号
逻辑表名
物理表名
说明
1
用户信息
user
记录用户信息
2
发表微博
记录消息的相关信息
3
发表评论
remark
记录评论信息
4
关注别人
guanzhu
记录关注信息
5
互相关注
friend
是否好友关系
各表详细说明
用户信息表(user)
序号
逻辑字段
物理字段
类型(长度)
规则
字段说明
1
用户ID
u_id
自动编号
主键
自动生成的长整型编号,具有唯一值
2
用户名
u_email
文本(45)
非空
用户邮箱当用户名,非空且唯一数据
3
密码
u_password
文本(20)
非空
用户密码为非空且唯一数据
4
昵称信息
u_nickname
文本(20)
非空
5
性别
u_sex
文本(10)
非空
只能为男或女,非空
6
地址信息
u_addr
文本(45)
非空
7
生日信息
u_birth
日期
8
qq信息
u_qq
整型
9
msn信息
u_msn
文本(20)
10
格言、签名
u_info
文本
11
真实姓名
u_name
文本(45)
12
照片信息
u_img
文本(45)
自己上传添加
发表微博表(weibo)
序号
逻辑字段
物理字段
类型(长度)
规则
字段说明
1
微博ID
w_id
自动编号
主键
自动生成的长整型编号,具有唯一值
2
用户ID
u_id
整型
用户ID为非空且唯一数据
3
微博发表时间
w_time
日期时间
非空
发表的具体时间
4
微博内容
m_message
文本
非空
5
微博种类
category
文本(60)
非空
原创和非原创
6
转发数量
z_id
整型
非空
自动计数
发表评论表(remark)
序号
逻辑字段
物理字段
类型(长度)
规则
字段说明
1
评论ID
r_id
自动编号
主键
自动生成的长整型编号,具有唯一值
2
微博ID
w_id
整型
微博ID为非空且唯一数据
3
用户ID
u_id
整型
用户ID为非空且唯一数据
4
评论发表时间
r_time
日期时间
非空
发表的具体时间
5
评论内容
r_text
文本
非空
关注别人表(guanzhu)
序号
逻辑字段
物理字段
类型(长度)
规则
字段说明
1
关注ID
g_id
自动编号
主键
自动生成的长整型编号,具有唯一值
2
用户ID
u_id
整型
用户ID为非空且唯一数据
3
被关注ID
g_gid
整型
非空
被关注ID为非空且唯一数据
互相关注表(friend)
序号
逻辑字段
物理字段
类型(长度)
规则
字段说明
1
朋友ID
f_id
自动编号
主键
自动生成的长整型编号,具有唯一值
2
用户ID
u_id
整型
用户ID为非空且唯一数据
3
另用户ID
f_fid
整型
非空
另一个用户ID为非空且唯一数据
3.2.2数据存储与数据流图
3.3JDBC数据库连接
本系统是使用封装好的JDBC-MySQL的驱动JAR包实现通过JDBC对数据库进行访问和操作的。
使用方法简便,只需把封装好的驱动JAR包导入本系统源代码程序目录的Web—Inf的类库文件夹下面。
再配置好连接字符串,就可以通过驱动访问数据库了。
本系统的连接字符串代码如下:
try{
//加载连接驱动
Class.forName(Config.CLASS_NAME);
//创建数据库连接字符串
Stringurl=Config.DATABASE_URL+":
//"+Config.SERVER_IP+":
"+Config.SERVER_PORT+"/"+Config.ORACLE_SID;
Stringuser=Config.USERNAME;
Stringpwd=Config.PASSWORD;
conn=DriverManager.getConnection(url,user,pwd);
}catch(ClassNotFoundExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
本系统采用配置文件的方式来设置驱动的连接字符串,这样写的好处是系统有很高的灵活性,每当要做出一些改动的时候(例如:
更换数据库地址,更换数据库实例,更换数据库管理员密码),只需要改动配置文件就可以了,而不用去改程序的代码。
便于系统的使用者操作。
第四章
微博详细设计与实现
微博详细设计的任务是在微博总体设计的指导下,对微博各组成部分进行细致具体的物理设计,使系统总体设计阶段所作的各种决定具体化。
在信息系统详细设计阶段,主要完成如下工作:
代码设计,输入输出设计等。
本微博由:
欢迎页面、登录模块、注册页面、用户主页、用户信息页面、关注页面、粉丝页面、收藏页面、搜索页面、游客页面、和帮助页面等模块组成。
4.1欢迎页面
运用了JS等技术,做出的3D特效,显示了微博活跃用户的头像,及欢迎语。
4.2微博登录模块
微博登录模块是本系统运行后,首先运行显示的页面。
此模块主要功能为对用户的身份进行验证,并且将用户的部分信息临时储存在服务器上以便使用。
系统登录界面如图4-1所示。
图4-1用户登录界面
4.3主页面
主页面即用户登陆后,进入的微博首页,
用户登录主界面
4.4注册页面
4.5个人资料页面
第五章微博测试及运行
5.1微博测试
微博测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。
执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。
5.1.1测试过程
测试过程按4个步骤进行,即单元测试、集成测试、确认测试和系统测试及发版测试。
开始是单元测试,集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能。
集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。
确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。
系统测试把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试。
5.1.2测试目的
(1)测试并不仅仅是为了找出错误.通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进。
(2)这种分析也能帮助测试人员设计出有针对性的测试方法,改善测试的效率和有效性。
(3)没有发现错误的测试也是有价值的,完整的测试是评定微博质量的一种方法。
5.1.3测试方法和工具
本系统采用如下方法进行测试:
(1)后台打印相关数据:
在系统测试出错误的时候,可以把相关重要的数据和方法用后台打印的方法打印出来,通过打印出的数据进行分析从而找出漏洞所在。
后台打印的好处是简单易行,工作量比较小。
(2)借助编译工具的辅助功能:
可以在测试中使用MyEclipse的DeBug功能设置程序断点,跟踪程序找出错误所在,这样测试的好处是可以准确的跟踪程序走向,从整个程序运行的流程上一步一步找出问题所在。
测试工具:
MyEclipse,通过编译工具MyEclipse的debug功能有效的跟踪代码,找出出错原因。
5.2系统运行
本系统为JAVA编写的B/S结构的WEB项目,运行步骤如下。
1.运行windows操作系统。
2.由于本系统是由JAVA编写所以需要安装JDK1.6JAVA虚拟机器,安装方法为:
运行JDK1.6安装文件,选择路径进行安装。
3.运行tomcat安装文件,选择安装路径,选择第2步已经安装好的JRE路径,进行tomcat的安装。
4.部署程序至tomcat。
5.安装MySQL数据库,导入表结构的SQL脚本,启动数据库实例服务。
6.启动tomcat。
7.打开浏览器并且输入如下网址。
http:
//localhost:
8080/mail/welcome.jsp
系统需也要一些日常管理:
包括日志的查看,服务器的维护等。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 项目 设计 文档