jsp文件上传与下载(完成版)
攀枝花学院
学生课程设计(
)
目: jsp文件上传与下载应用程序
学生姓名: 许折龙 学 号:200910801080 所在院(系): 计算机学院 专 业: 计算机科学与技术 班 级: 2 班 指 导 教 师: 罗学刚 职称: 讲师
2012年 6 月 1日
攀枝花学院教务处制
攀枝花学院本科学生课程设计任务书 题 目 JSP文件上传与下载应用程序
1、课程设计的目的
通过本课程设计使学生能够较全面的掌握面向对象程序设计的有关概念和开发方法,以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力。
2、课程设计的内容和
(包括原始数据、技术要求、工作要求等)
利用JSP技术开发一个个人文档的应用,实现文档的上传、下载、目录管理(可选)、权限控制(可选)。
3、主要参考文献
[1]朱福喜.《Java语言程序设计》(第二版).科学出版社
[2]陈国君等.《Java程序设计基础》(第二版).清华大学出版社 [3] Deitel.《Java大学基础教程》(第六版).电子工业出版社
[4] MaryCampione.《Java语言导学》(第四版).机械工业出版社 [5] Y.Daniel Liang.《Java语言程序设计基础篇》(第六版). 机械工业出版社 [6] Kathy Sierra.《Head First Java》(第二版).东南大学出版社
4、课程设计工作进度计划
序号 时间(天) 内容安排 备注
1 1 分析设计准备 周一
2 2 编程调试阶段 周二至周三
3 1 编写课程设计报告 周四
4 1 考核 周五
总计 5(天)
指导教师(签字) 日期 年 月 日 教研室意见:
年 月 日 学生(签字):
接受任务时间: 年 月 日 注:任务书由指导教师填写。
课程设计(论文)指导教师成绩评定表 题目名称 JSP文件上传与下载应用程序
分得评分项目 评价内涵 值 分
遵守各项纪律,工作刻苦努力,具有良好的科学工01 学习态度 6 工作态度。 作 通过实验、试验、查阅文献、深入生产实践等渠表02 科学实践、调研 7 道获取与课程设计有关的材料。 现 按期圆满完成规定的任务,工作量饱满。 03 课题工作量 7 20%
能运用所学知识和技能去发现与解决实际问题,
能正确处理实验数据,能对课题进行理论分析,04 综合运用知识的能力 10
得出有价值的结论。
能独立查阅相关文献和从事其他调研;能提出并
较好地论述课题的实施方案;有收集、加工各种05 应用文献的能力 5 能信息及获取新知识的能力。 力 能正确设计实验方案,独立进行装置安装、调试、设计(实验)能力,方案水操作等实验工作,数据正确、可靠;研究思路清06 5 的设计能力 晰、完整。 平
具有较强的数据运算与处理能力;能运用计算机35% 07 计算及计算机应用能力 5 进行资料搜集、加工、处理和辅助设计等。
对计算或实验结果的分析
具有较强的数据收集、分析、处理、综合的能力。 08 能力(综合分析能力、技10
术经济分析能力)
插图(或图纸)质量、篇符合本专业相关
或规定要求;规范化符合本成09 幅、设计(论文)规范化5 文件第五条要求。 果 程度
质综述简练完整,有见解;立论正确,论述充分,10 设计说明书(论文)质量 30 结论严谨合理;实验正确,分析处理科学。 量
45% 对前人工作有改进或突破,或有独特见解。 11 创新 10
成绩
指
导
教
师
评
语
指导教师签名: 年 月 日
攀枝花学院Java课程设计报告
摘 要
现在大多数人喜欢上网查询资料,而网站开发人员的能力是有限的,无法满足所有网友的需要,因此就需要网友之间的交流来解决这些问题。所以网站上传与下载功能的实现是必须的。
开发web程序中,经常要涉及对文件的上传或下载操作。在以前的web应用程序中,要实现文件上传是个很麻烦的是,但这一操作在web应用程序中又会经常用到,因此令我非常头疼。而在用jsp技术以及运用struts框架中,要实现文件的上传与下载也非难事。
系统开发采用JSP动态网页技术和STRUTS框架结构,利用其强大功能及对数据库的支持,先构造一个原型,逐步增加功能,最终满足需求。系统中大量采用SQL查询语句,界面友好,功能较强,并且使用mysql作为数据库。不足的地方是当数据访问量大时,将致使性能的下降,且不利于数据的有效共享,在以后改进的中应考虑采用SQL SERVER2000作为数据库,解决访问速度及数据共享的问题。该系统性能力求易于使用,具有较高的扩展性和可维护性。
关键词 JSP,struts,Mysql, 文件上传与下载, 系统开发
I
攀枝花学院Java课程设计报告
目 录
摘 要 ............................................................ I
1前言 ............................................................. 1
1.1 项目名称 ............................................................ 1
1.2 项目目的 ............................................................ 1
1.3 项目背景 ............................................................ 1 2 可行性研究报告 .................................................. 2
2.1 概论 ................................................................ 2
2.2 可行性研究的前提 .................................................... 2
2.2.1 项目的基本功能要求 ??????????????????????? 2
2.2.2 项目实现的目标 ????????????????????????? 2
2.2.3 决定可行性的主要因素 ?????????????????????? 2
2.3 程序业务
图 ...................................................... 3
2.5 技术可行性分析 ...................................................... 3
2.5.1 系统的简要概述 ????????????????????????? 3
2.5.2 需用技术 ???????????????????????????? 3
2.6 结论意见 ............................................................ 3 3 需求规格说明书 .................................................. 4
3.1 概论 ................................................................ 4
2 任务概述 ............................................................ 4 3.
3.2.1 项目目标 ???????????????????????????? 4
3.2.2 开发运行环境 ?????????????????????????? 4
3.2.3 系统规范要求 ?????????????????????????? 4 4 设计与实现 ...................................................... 5
4.1 模块说明 ............................................................ 5
4.1.1 文件上传模块 ?????????????????????????? 5
4.1.2 文件下载模块 ?????????????????????????? 5
4.2 数据库设计 .......................................................... 5
4.3 界面设计 ............................................................ 6
4.3.1 文件上传页面设计 ???????????????????????? 7
4.3.2 文件下载页面设计 ???????????????????????? 8 结论 ............................................................. 10 参 考 文 献 ...................................................... 11
II
攀枝花学院Java课程设计报告
1前言
开发web程序中,经常要涉及对文件的上传或下载操作。在以前的web应用程序中,要实现文件上传是个很麻烦的是,但这一操作在web应用程序中又会经常用到,因此令我非常头疼。而在用jsp技术以及运用struts框架中,要实现文件的上传与下载也非难事。
1.1 项目名称
《文件上传与下载》
1.2 项目目的
(1) 了解文件上传和下载的流程;
(2) 学会使用Fileupload组件实现上传;
(3) 掌握文件的下载.
1.3 项目背景
现在大多数人喜欢上网查询资料,而网站开发人员的能力是有限的,无法满足所有网友的需要,因此就需要网友之间的交流来解决这些问题。所以网站上传与下载功能的实现是必须的。并且通过本项目熟悉网站开发的基本流程,掌握相关技术,积累开发经验。
1
攀枝花学院Java课程设计报告
2 可行性研究报告
2.1 概论
文件上传与下载项目运用 jsp、(sqlserver2000)数据库、和struts框架相关技术,本案通过对其相应的研究确定开发可行性及注意事项。
2.2 可行性研究的前提
2.2.1 项目的基本功能要求
本项目主要包括两种操作: 文件上传、文件下载。
在文件上传页中可以通过使用选择文件操作中的“上传文件”进入文件上传页面,然后点击浏览,可上传电脑上指定的文件,让后点击“上传”可以将所选中文件进行上传,并将相对应的文件名存于数据库中。文件下载同样需要选择文件操作中的“文件下载”进入到下载页面或者在上传页面中也显示了一个下载页面的链接,点击也可进入下载页面,然后在选择对应先文件名,点击“下载”,方可启动迅雷进行下载。也才可以下载到本机电脑上。
2.2.2 项目实现的目标
该项目可以进行上传的文件包括:图片文件、压缩文件、可执行文件、等等。并且可以在下载页面下载所上传的文件。
2.2.3 决定可行性的主要因素
(1)经济可行性:系统建设基本不需要经济的投入。
(2)运行上可行性:本系统只是网站开发的一部分,所耗费的资源也非常的小。
(3)从各种社会因素可行性分析:可提高文件的利用率,提高效率更有利于网友的交流,会得到人们的一致同意的。
综上所述,通过可行性分析认为新系统的开发方案切实可行,可进行开发。
2
攀枝花学院Java课程设计报告 2.3 程序业务流程图
2.1程序流程图
2.5 技术可行性分析
2.5.1 系统的简要概述
该系统主要分为两部分:文件上传部分、文件下载部分。 2.5.2 需用技术
Jsp技术,struts框架,java语言,数据库技术等等。 2.6 结论意见
通过研究具备相关的开发条件,可以开发本项目。
开发过程中仍需进一步钻研、进取,结合所学知识综合运用,在实践中加深
对知识的理解。边实现文件上传与下载的功能边学习新知识及对所学知识进行实
践操作。
3
攀枝花学院Java课程设计报告
3 需求规格说明书
3.1 概论
文件的上传与下载功能的实现需要相应的开发和运行环境,本案介绍该项目
在开发和运行过程中所需要的准备工作和相关规格需求,以规范该项目,保证功
能的完整性。
3.2 任务概述
3.2.1 项目目标
本项目实现的具体功能如下:
? 文件上传功能;
? 判断上传文件是否为空;
? 文件下载;
? 重命名上传的图片;
? 将上传文件名添加到数据库;
3.2.2 开发运行环境
系统开发环境:MyEclipse8.5 系统开发语言:java+jsp+struts+html+css
运行平台:Windows XP
数据库:SQL Server 2000 Web服务器: tomcat
3.2.3 系统规范要求
(1)界面设计友好、美观。
(2)数据存储安全、可靠。
(3)信息分类清晰、准确。
(4)提供灵活、方便的权限设置功能,使整个系统的管理分工明确。
(5)具有易维护性和易操作性。
4
攀枝花学院Java课程设计报告
4 设计与实现
该项目主要有三个功能模块:文件上传模块、文件下载模块。两个模块对应三个页面,有相应的数据在三个页面间传递。本案主要介绍该项目的总体设计和对应的模块功能划分。
选择文件操作
文件下载模块
(显示已上传至数据文件上传模块
库的文件名,并选择相(选择要上传的文 关操作) 件,并将文件名写入
数据库)
4.1 模块功能划分图
4.1 模块说明
4.1.1 文件上传模块
(1)在选择文件操作页面选择文件上传,跳转至文件上传页面,点击浏览,选择要上传文件,进行文件上传,点击“上传”后若输入正确则会显示上传成功。若错误则显示文件上传失败。
(2)在文件上传页面,有一个“文件下载”,点击它,将跳转至下载页面。 4.1.2 文件下载模块
(1)在选择文件操作页面单击“文件下载”,跳转到下载文件页面。该页面将显示要下载的文件名,点击下载,将对相应文件进行下载。
(2)在文件下载页面,有一个“文件上传”,点击它,将跳转至文件上传页面。 4.2 数据库设计
本系统采用SQL Server 2000数据库,仅需一个表:数据表tb_file用来存放文件名,文件类型,文件大小。。。
数据库结构图:
5
攀枝花学院Java课程设计报告
4.2数据库结构图例
数据表设计示,如表4-1:
列名 数据类型 允许空
f_id int 否
f_name varchar(50) 是
f_type varchar(50) 是
f_size bigint 是
f_info varchar(50) 是
f_id用于存储的文件名称的序列号,f_name用于存文件的名字,f_type用于存储文件的类型,f_size用于存储文件的大小,f_info用于存储文件的描述信息。
4.3数据表设计图例
4.3 界面设计
本案主要介绍各个页面的主要控件及功能实现,通过实例展现出项目开发的详细过程。
6
攀枝花学院Java课程设计报告
图5.1文件组织结构图 4.3.1 文件上传页面设计
前台布局如下:
1.选择文件操作页面:
图5.2文件操作页面 2.文件上传页面:
7
攀枝花学院Java课程设计报告
图5.3 文件上传页面
图5.4选择上传文件
图5.5文件上传成功标志
4.3.2 文件下载页面设计
文件下载页面显示如下:
8
攀枝花学院Java课程设计报告
图5.3 文件下载页面
图5.4文件进行下载中
9
攀枝花学院Java课程设计报告
结论
在此次项目中我独自完成了项目的功能设计,结合所学知识综合运用,效果良好。在设计过程中学到了很多东西,同时也了解到自己有很多知识要点都掌握不牢固,还有界面设计不怎么好看,需要进一步学习网页设计。现在此做一总结。 完成情况如下:(1)网页设计不怎么友好,需进一步改善之。(2)各项功能可正常实现;(3)数据库设计合理。
本项目是我独自创作的项目,虽功能不多,但能将其实现,心里还是比较高兴的,在做的过程中收获了很多,主要有如下几个方面:(1)将所学知识用于实践,深入理解了所学知识,运用更加熟练。(2)自己查阅资料(如网上百度等),扩展了知识面,对项目开发过程有了深入详细了解。(3)代码编写水平有一定提高。存在不足如下:项目开发不是一帆风顺的,开发过程中也有些不足的地方;开发环境运用不太熟练,编代码上有一定影响;代码书写格式不太规范,易出现语法错误,影响开发进度;界面设计太丑,整体上看起来不美观。需改进意见如下:做任何事情都要认真对待、详细了解、充分准备;进一步熟悉开发环境,提高代码编写水平,代码书写规范化;在编写过程中尝试自己编写方法,改变方法,发散思维;有恒心毅力,刻苦进取;对所学知识,要多实践操作,这样才能掌握牢固;对不懂的问题,要及时查阅资料,将其搞懂;要在学习中不断探索新的知识为前提。
10
攀枝花学院Java课程设计报告
参 考 文 献
[1]朱福喜.《Java语言程序设计》(第二版).科学出版社 [2]陈国君等.《Java程序设计基础》(第二版).清华大学出版社 [3] Deitel.《Java大学基础教程》(第六版).电子工业出版社 [4] MaryCampione.《Java语言导学》(第四版).机械工业出版社 [5] Y.Daniel Liang.《Java语言程序设计基础篇》(第六版). 机械工业出版社 [6] Kathy Sierra.《Head First Java》(第二版).东南大学出版社
11