通过前台选择文件,然后将资源上传到(即新建一个文件)到发布的资源文件下面,
下载就是url 到发布的资源文件,触发即可自动下载。服务器已经封装了如何下载的底层实现。(此处用的是tomcat)
JSP上传文件方法:关于在HTTP request 中通过Post方法提交文件的规范,该项目性能稳定快速,易于部署和使用.本次教程以前端jsp + 后端 servlet的方式,利用JSP上传文件,你也可以完全在jsp中实现而不用servlet.
在开始JSP上传文件之前你要准备以下几个东西:
1. commons-FileUpload 1.3 包
下载地址:
2. commons-IO 2.5 包
下载地址:
有了上面这些东西我们就可以开始了
1. 新建一个叫Servlet_UploadDownLoad的WEB项目
2. 接着把这两个jar包放到WEB-INF/lib目录中:
3.接下来我们要准备一份如下内容的upload.
上面文件中有几个需要注意的地方就是
1. action="UploadServlet" 必须和后面的web.xml配置文件中对servlet映射必须保持一致.
2.method="POST"这里必须为"POST"方式提交不能是"GET".
3.enctype="multipart/form-data"这里是要提交的内容格式,表示你要提交的是数据流,而不是普通的表单文本.
4. file1,file2,file3表示你要3个文件一起上传,你也可以一次只上传一个文件.
接下来我们要写一个与上面这个upload.jsp配套的servlet程序,就叫做UploadServlet.java
upload.jsp文件有了,配套的servlet也有了,现在最后剩下的就是怎么让它们配合工作了,接着我们把WEB-INF/web.xml文件请出来,并在该文件中加入以下内容:
写好以后再点击"保存"
把你的upload项目整个拷贝到tomcat的webapps目录下,启动tomcat.打开IE浏览器在地址栏中输入:8080/Servlet_UploadDownLoad/upload.jsp怎么样看到JSP上传文件的输入框了吗? 什么,没有看到,出错了! 你仔细检查一下步骤有没有对.
好了,现在我们点击页面上的"浏览"按钮,找到我们要上传的文件,最后点击"Submit",太激动了,还不看一下你的I:\\updir里面有没有你要的东西.
在HTML网页中,通过超链接链接到要下载的文件的地址:downloadOne.jsp
"/Servlet_UploadDownLoad/file/commons-beanutils-1.9.3-bin.zip"是文件路径,程序结构如下图:
程序运行后,可以通过单击需要下载文档实现下载
但是这里会出现一个问题,就是单击下载压缩包的时候会弹出下载页面,但是下载图片的时候浏览器就直接打开了图片,没有下载。
这是因为通过超链接下载文件时,如果浏览器可以识别该文件格式,浏览器就会直接打开。只有浏览器不能识别该文件格式的时候,才会实现下载。
因此利用第二种方法实现下载功能。
通过Servlet下载文件的原理是通过servlet读取目标程序,将资源返回客户端。
downloadTwo.jsp
其中,/Servlet_UploadDownLoad 是servlet程序的映射路径
然后新建一个servlet,名称为ServletDownload,URL映射为/ServletDownload
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-72413-1.html