首页 > 代码库 > Struts文件下载(静态)
Struts文件下载(静态)
前言:在实际的开发中,我们可能需要动态下载和静态下载,
动态下载:例如我上传了一个文件,你想下载,那就必须动态生成下载链接,因为我服务器一开始是不知道我上传的东西是什么,放在那里,
静态下载:比如一些网站一些固定的资源,提供给我们下载
这里我写的是关于静态的下载实现流程:
第一步:
编写Action类,响应下载的的超链接:
1)声明contentType(文件类型)contentLength( 下载的文件的长度)contentDisposition(响应信息的类型)这三个属性,并提供这三个属性的set和get方法
ps:其中contentDisposition属性一定要声明而且也要指定属性值,:因为默认的属性值,无法响应下载的result的type类型的Stream
具体声明如下:
1 private String contentType; 2 private long contentLength; 3 private String contentDisposition; 4 private InputStream inputStream; 5 6 public String getContentType() { 7 return contentType; 8 } 9 10 public long getContentLength() {11 return contentLength;12 }13 14 public String getContentDisposition() {15 return contentDisposition;16 }17 18 public InputStream getInputStream() {19 return inputStream;20 }21
2提供inputstream:(提供一个输入流给浏览器下载)
代码如下:
1 private InputStream inputStream; 2 public InputStream getInputStream() { 3 return inputStream; 4 } 5 6 7 public String execute() throws Exception { 8 9 //确定各个成员变量的值10 11 contentDisposition = "attachment;filename=hidden.html";12 13 ServletContext servletContext = ServletActionContext.getServletContext();//取得ServletContext对象15 String fileName = servletContext.getRealPath("/File/hidden.html");//取得需要下载文件的路径16 inputStream = new FileInputStream(fileName);17 18 19 return SUCCESS;20 }
Struts文件下载(静态)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。