logo资料库

开发案例-Web文件管理系统.pdf

第1页 / 共59页
第2页 / 共59页
第3页 / 共59页
第4页 / 共59页
第5页 / 共59页
第6页 / 共59页
第7页 / 共59页
第8页 / 共59页
资料共59页,剩余部分请下载后查看
第5章开发案例-Web文件管理系统
Eclipse与Tomcat集成
系统功能与需求分析
系统概述
需求分析
系统功能预览
系统分析设计
功能模块划分
数据库设计
数据库访问设计
整体框架设计
目录和包结构
日志记录
系统实现
系统基础功能
服务类设计
查询用户
注册用户
登录和注销
查询已上传文件
上传文件
下载文件
删除文件和用户
Web程序的运行
创建Web项目
运行Web项目
发布WAR文件
-Web 开发案例开发案例 第第第第 5555 章章章章 开发案例 文件管理系统 -Web 文件管理系统 -Web 文件管理系统 开发案例-Web 文件管理系统 本章设计一个使用 Servlet 和 JSP 的综合案例-Web 文件管理系统。他的主要功能是用 户在系统中注册成功后,可以上传文件到系统中,并可以对文件进行管理。 在这个系统的构建中重点学习:向 Web 服务器提交表单数据,如何上传文件,如何下载 文件,如何对程序的执行过程进行日志记录,如何把设计完成的程序发布到 Web 服务器。 本章首先对案例进行功能与需求分析,然后提出设计方案,并用程序实现。最后把开发 好的案例发布到 Web 服务器上。 Tomcat Eclipse 与与与与 Tomcat Eclipse Tomcat 集成集成集成集成 Eclipse Tomcat 5.15.15.15.1 Eclipse 在第二章中讲过,Eclipse SDK 和 WTP 项目集成后,就可以开发 Servlet,JSP 等 Java Web 程序,开发好的 Servlet 和 JSP 需要发布到一个 Web 服务器上进行测试。本节讲解一些 Eclipse 和 Tomcat5.5 的集成,主要完成 Eclipse 中的设置。 1)启动 Eclipse,打开菜单【window】|【Preferences】,显示 Eclipse 配置对话框, 单击左边目录树中的【Server】|【Installed Runtimes】选项,如图 5-1 所示。 2)单击右边的【Add..】按钮,显示“新建服务器运行时环境”对话框,按图 5-2 所示 , 图 5-1 Eclipse 中的服务器配置 选择“Apache Tomcat v5.5”。
图 5-2 选择 Tomcat v5.5 3) 单击【Next】按钮,显示 Tomcat 服务器配置对话框,在这里设置 Tomcat 服务器 的名字,选择 Tomcat 的安装路径(前提是已经安装了 Tomcat 5.5),选择使用的 JRE,如图 5-3 所示,配置完成后,点击【Finish】按钮,关闭对话框后,如图 5-4,说明 Tomcat 服务 器已经配置好了,可以用来测试 Servlet 和 JSP。 图 5-3 配置 Tomcat 服务器
图 5-4 Eclipse 中已经配置好的服务器运行时环境 如果我们在 Java Web 程序开发中还需要其他服务器,也可以按照这个方法进行配置。 系统功能与需求分析 系统功能与需求分析 5.25.25.25.2 系统功能与需求分析 系统功能与需求分析 5.2.1 系统概述 5.2.1 系统概述 5.2.1 系统概述 5.2.1 系统概述 不论什么类型和用途的 Java Web 应用程序,在功能上都有一些共同的部分,最基本的 功能如 1)用户填写表单,向服务器提交数据,最常见的是新用户注册, 2)向服务器上传 文件和从服务器下载文件,最常见的是在 Web 上发电子邮件时,添加附件。 本章所讲解的例子“Web 文件管理系统”就是向读者展现这两个主要功能的实现。一个 良好的 Web 应用程序除了具备满足用户需求的功能外,还应该具备一个良好的结构。本案例 在综合前面学习的 Servlet 和 JSP 的基本知识上,使用 MVC 模式构建程序的框架,由 Servlet 负责控制用户的请求,JSP 负责用户界面的显示,模型部分有服务类和 JavaBeans 组成。 用户提交的数据一般需要保存到数据库中,本案例还使用到 JDBC,在构建访问数据库 的代码时,使用 DAO 模式。 5.2.2 需求分析 5.2.2 需求分析 5.2.2 需求分析 5.2.2 需求分析 本案例是构建一个 Web 文件管理系统,就是注册用户个人信息,然后可以上传和下载 文件。任何合法的注册用户都可以上传和下载文件,但是只能删除自己上传的文件,不能删 除其他用户上传的文件。系统需求总结如下: 1) 注册新用户,删除用户。
2) 显示所有用户的列表 3) 用户登录。 4) 已登录用户上传文件 5) 显示所有文件的列表 6) 下载文件 7) 用户删除自己的文件。 系统功能预览 系统功能预览 5.2.3 5.2.3 系统功能预览 系统功能预览 5.2.3 5.2.3 1) 新用户注册,输入用户名,姓名,电子邮件和口令就可以了,如图 5-5 所示。 2)用户登录,如图 5-6 所示 图 5-5 注册新用户
3)上传文件,如图 5-7 图 5-6 用户登录 4)浏览自己上传的文件,如图 5-8,在这里还可以删除和下载文件。 图 5-7 上传文件
5)浏览全部文件,如图 5-9 图 5-8 用户浏览已上传文件 6)浏览所用用户,如图 5-10 图 5-95-95-95-9 浏览全部文件
图 5-105-105-105-10 浏览所有用户 系统分析设计 系统分析设计 5.35.35.35.3 系统分析设计 系统分析设计 需求确定之后需要对系统进行整体分析和设计,包括系统功能的描述和模块划分、数据 库设计、数据库访问设计、整体框架设计、目录与包结构设计和日志记录。 5.3.1 功能模块划分 5.3.1 功能模块划分 5.3.1 功能模块划分 5.3.1 功能模块划分 模块分析是描述系统需求的一个过程,需要将需求分析中的感性描述进行抽象,提取出 需要实现的功能,是整个系统开发的一个关键过程。分析的根本目的是在开发的人和提出 需 求的人之间建立一种理解和沟通的机制。在整个软件的构建中使用 MVC 模式,在模块划分 中同时指出用什么技术规范实现。根据前面提出的系统需求,对其模块的划分与功能描述如 下: 1) 用户的管理 � 用户登录表单的显示,用 JSP 实现 � 用户登录和注销操作,用 Servlet 实现 � 用户的删除,用 Servlet 实现 � 查询所有的用户,用 Servlet 实现 � 所有用户的显示,用 JSP 实现 2) 文件的管理 � 文件上传表单的显示,用 JSP 实现 � 处理用户上传的文件,用 Servlet 实现
� 下载或者删除文件,用 Servlet 实现 � 查询所有的文件,用 Servlet 实现 � 显示所有的文件列表,用 JSP 实现 数据库设计 数据库设计 5.3.2 5.3.2 数据库设计 数据库设计 5.3.2 5.3.2 数据库设计是这个系统设计中非常重要的一环,数据是一切系统设计的基础,如果设计 不合理、不完善,将在系统开发过程中,设置后期的系统维护、功能变更和功能扩充时引起 较多问题,严重时,设置要重新设计项目,重做已经完成的工作。 从功能模块的划分可知,本系统主要涉及两类实体:用户和文件。 � 用户实体:需要记录用户的 ID,姓名,电子邮件,口令和创建时间。 � 文件实体:需要记录文件的 ID,文件的名称,在服务器磁盘上存储的路径,文件 的上传时间,文件的所有者。为了更好的描述文件,还需记录文件的标题和类型。 这两个实体之间有一种关系,就是每个上传文件的用户是这个文件的所有者。在设计数 据库表时要注意两个实体之间关系的确立。 在设计数据库表时,一般要遵循下面几条原则: � 数据库的一个表,最好只存储一个实体或者对象的相关信息,最好能够遵循数据库 设计中的第三范式。 � 数据表的信息结构一定要合适,字段的数量一般不要过多。 � 扩充信息和动态变化的信息一定要分别放在不同的表里。 � 数据库表中最好有一个表示时间的字段。 � 表的名字最好能够反映实体的含义,名字前最好有一个前缀或者后缀,这样当同时 使用表和视图时,容易区分。 � 字段的命名规则尽量一致,统一使用英文单词或者汉语拼音。 1.1.1.1. 创建数据库和表 首先要创建一个数据库,在这里我们暂且使用 MS SQLServer 2000。在 SQLServer 2000 的企业管理器中创建一个数据库,名称为“filedb”。然后再创建两张表:tblUser 和 tblFile。 在命名表的名称时使用了前缀“tbl”,这样就可以在名称上和今后使用的视图区分开来。 表 5-1 tblUser 用户表 序号 字段 1 2 3 4 5 6 类型 Varchar(50), not null UserID Varchar(10), not null UserName UserMail Varchar(50), not null UserPassword Varchar(50), not null UserType UserCreated Int,default 0 Datetime default getdate() 含义 主键,用户唯一标识 姓名 电子邮件 口令 用户类型,0 普通用户,1 管理员 创建时间 表 5-2 tblFile 文件表 序号 字段 FileID 1 2 FileName FilePath 3 4 FileType 类型 Int 自增 Varchar(255), not null Varchar(255), not null Varchar(10), 含义 主键,文件唯一标识 文件原始名称 文件的存放路径 文件类型,保留
分享到:
收藏