JSP开发之Struts2实现下载功能的实例

1、Action 类
package com.favccxx.strutsdemo;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import com.opensymphony.xwork2.ActionSupport;
public class DownloadAction extends ActionSupport {
private static final long serialVersionUID = -7758584364932001138L;
private InputStream inputStream;
@Override
public String execute() throws Exception {
inputStream = new FileInputStream(new File("D:\\芒果豆.jpg"));
return SUCCESS;
}
public InputStream getInputStream() {
return inputStream;
}
public void setInputStream(InputStream inputStream) {
this.inputStream = inputStream;
}
}
2、struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
<default-action-ref name="index" />
<global-results>
<result name="error">/error.jsp</result>
</global-results>
<global-exception-mappings>
<exception-mapping exception="java.lang.Exception" result="error"/>
</global-exception-mappings>
<action name="index">
<result type="redirectAction">
<param name="actionName">HelloWorld</param>
<param name="namespace">/example</param>
</result>
</action>
<action name="download" class="com.favccxx.strutsdemo.DownloadAction">
<result name="success" type="stream">
<param name="contentType">application/octet-stream</param>
<param name="inputName">inputStream</param>
<param name="contentDisposition">attachment;filename="mongo.jpg"</param>
<param name="bufferSize">1024</param>
</result>
</action>
</package>
</struts>
3、web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Struts Blank</display-name>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
4、JSP
<a href="/download" rel="external nofollow" >无注解下载</a>
以上就是JSP实现下载功能的实例代码,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章:
如何在自有机房高效搭建专业网站?
建站之星Pro快速搭建教程:模板选择与功能配置指南
广德云建站网站建设方案与建站流程优化指南
c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】
如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法
如何制作一个表白网站视频,关于勇敢表白的小标题?
如何用狗爹虚拟主机快速搭建网站?
平台云上自主建站:模板化设计与智能工具打造高效网站
如何配置IIS站点权限与局域网访问?
C#如何使用XPathNavigator高效查询XML
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
深圳 网站制作,深圳招聘网站哪个比较好一点啊?
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
网站制作企业,网站的banner和导航栏是指什么?
建站主机助手选型指南:2025年热门推荐与高效部署技巧
营销式网站制作方案,销售哪个网站招聘效果最好?
岳西云建站教程与模板下载_一站式快速建站系统操作指南
个人网站制作流程图片大全,个人网站如何注销?
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
建站之星免费模板:自助建站系统与智能响应式一键生成
上海网站制作开发公司,上海买房比较好的网站有哪些?
网站制作免费,什么网站能看正片电影?
如何快速生成橙子建站落地页链接?
如何选择PHP开源工具快速搭建网站?
青浦网站制作公司有哪些,苹果官网发货地是哪里?
网站好制作吗知乎,网站开发好学吗?有什么技巧?
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
如何自定义建站之星模板颜色并下载新样式?
手机网站制作与建设方案,手机网站如何建设?
网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
c# 服务器GC和工作站GC的区别和设置
c# F# 的 MailboxProcessor 和 C# 的 Actor 模型
教学论文网站制作软件有哪些,写论文用什么软件
?
太原网站制作公司有哪些,网约车营运证查询官网?
建站之星安装需要哪些步骤及注意事项?
西安大型网站制作公司,西安招聘网站最好的是哪个?
如何获取上海专业网站定制建站电话?
无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
如何高效配置IIS服务器搭建网站?
动图在线制作网站有哪些,滑动动图图集怎么做?
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
如何通过虚拟主机空间快速建站?
C#怎么使用委托和事件 C# delegate与event编程方法
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
如何选择最佳自助建站系统?快速指南解析优劣
导航网站建站方案与优化指南:一站式高效搭建技巧解析
5种Android数据存储方式汇总
*请认真填写需求信息,我们会在24小时内与您取得联系。