博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java之struts2之文件下载
阅读量:5038 次
发布时间:2019-06-12

本文共 1701 字,大约阅读时间需要 5 分钟。

1.在实际应用开发中,文件下载功能也非常常见。

2.最简单的文件下载方式是通过超链接来进行文件下载:

注意:直接通过超链接下载文件,如果浏览器能够读取文件,浏览器会直接读取,而不会下载到本地。并且有安全问题。所以,可以通过action来实现下载。

3.Struts2文件下载功能的实现:

Action实现

public class DownloadAction {    private String fileName;    public String execute(){        return Action.SUCCESS;    }    //获取文件流    public InputStream getInputStream() throws FileNotFoundException{        String path=ServletActionContext.getServletContext().getRealPath("/download");        return new FileInputStream(new File(path,fileName));    }    public String getFileName() {        return fileName;    }    public void setFileName(String fileName) {        this.fileName = fileName;    }}

Struts.xml

inputStream
attachment;filename=${fileName}

jsp

 

或者 Action的另一种写法:

public class DownloadAction {    private String fileName;    private InputStream inputStream;    public String execute() throws FileNotFoundException{        String path=ServletActionContext.getServletContext().getRealPath("/download");        inputStream =  new FileInputStream(new File(path,fileName));        return Action.SUCCESS;    }    public InputStream getInputStream() {        return inputStream;    }    public void setInputStream(InputStream inputStream) {        this.inputStream = inputStream;    }    public String getFileName() {        return fileName;    }    public void setFileName(String fileName) {        this.fileName = fileName;    }}

转载于:https://www.cnblogs.com/Vincent-yuan/p/11161226.html

你可能感兴趣的文章
App右上角数字
查看>>
从.NET中委托写法的演变谈开去(上):委托与匿名方法
查看>>
六、PowerDesigner 正向工程 和 逆向工程 说明
查看>>
小算法
查看>>
201521123024 《java程序设计》 第12周学习总结
查看>>
贪吃蛇游戏改进
查看>>
新作《ASP.NET MVC 5框架揭秘》正式出版
查看>>
“前.NET Core时代”如何实现跨平台代码重用 ——源文件重用
查看>>
【POJ1845】Sumdiv(数论/约数和定理/等比数列二分求和)
查看>>
在WPF中使用Caliburn.Micro搭建MEF插件化开发框架
查看>>
IdentityServer4-用EF配置Client(一)
查看>>
UWP: 掌握编译型绑定 x:Bind
查看>>
asp.net core系列 35 EF保存数据(2) -- EF系列结束
查看>>
WPF程序加入3D模型
查看>>
WPF中实现多选ComboBox控件
查看>>
读构建之法第四章第十七章有感
查看>>
C#中的IEnumerable<T>知识点
查看>>
android访问链接时候报java.net.MalformedURLException: Protocol not found
查看>>
dwz ie10一直提示数据加载中
查看>>
Windows Phone开发(4):框架和页 转:http://blog.csdn.net/tcjiaan/article/details/7263146
查看>>