`
titanseason
  • 浏览: 180748 次
社区版块
存档分类
最新评论

JAVA Web 之 struts2文件上传下载演示(二)

阅读更多

 

JAVA Web 之 struts2文件上传下载演示(二)

一、文件上传演示

    详细查看本人的另一篇博客 http://titanseason.iteye.com/blog/1489397

 

 

二、文件下载演示

 

1.Web界面

    由于我的操作是,先上传文件,然后才能下载,所以,html代码中的fileFileName=${newFileName},而不是等于具体的文件名,大家在自己做项目的时候,可以修改一下

 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>下载文件</title>
</head>
<body>
	<div align="center">
		<a href="download?fileFileName=${newFileName}">下载</a>
	</div>
</body>
</html>

 

2.Struts配置

 

		<action name="download" class="action.FileAction" method="download">
         	<result name="success" type="stream">
         		<param name="contentType">application/octet-stream</param>
         		<!-- filename的属性值,表示的是下载的时候,显示在下载工具中的文件名,而不一定是保存的文件的文件名 -->
				<param name="contentDisposition">attachment;filename="${fileFileName}"</param>
				<!-- 下载的文件流的方法名, 也就是说, 在Java代码里面必须有InputStream getDownloadFile()这个方法 -->
				<!-- 在这里定义成文件名xxx,那么对应在Java文件中就必须要有InputStream getXxx()方法 -->
				<param name="inputName">downloadFile</param>
				<!-- 缓存大小 -->
				<param name="bufferSize">4096</param>
			</result>
			<result name="input">index.jsp</result>
		</action>
 

 

3.Java后台代码

 

	
	public String download(){
		return SUCCESS;
	}
	
	public InputStream getDownloadFile() {
		return ServletActionContext.getServletContext().getResourceAsStream(
				"/file/" + fileFileName);
	}
 

 

4.小注

    至此,文件下载演示完成

<1>如果下载的时候,出现中文乱码,请看另一篇博客

http://titanseason.iteye.com/blog/1489517

<2>下载的效果图如下所示


  • 大小: 12.9 KB
分享到:
评论
3 楼 titanseason 2013-08-07  
fengjiedan 写道
根本不能下载

可以下载Demo试一下,我好早以前写的,以前写的时候,是可以下载的
2 楼 fengjiedan 2013-08-07  
根本不能下载
1 楼 mm_021 2012-04-24  
不错,写的很详细  顶

相关推荐

    Java struts2 Spring 整合文档附加演示工程

    1.struts2_1 struts2 基本配置 2.struts2_2 validationl,ModelDriven,properties 3.struts2_interceptor 拦截器,自定义拦截器 4.struts2_log4j 5.struts2_spring struts spring 整合 以上功能包含完整示例代码 ...

    Java Web EJB3+JPA+Struts2 分布式宠物商店源代码项目

    分布式宠物商店(EJB3+JPA+Struts2) 宠物商店(petstore)是个比较经典的demo案例, 以宠物商店充分演示EJB3与Java Web程序,Java图形界面程序的结合 主要模块:会员模块 宠物类别模块 宠物模块 购物模块

    Java EE Web开发实例精解完整光盘

     除了对JAVA EE Web编程基本技术的讲解淙外,还针对Web应用开发中如打印、图表、日志、上传、下载和国际化等常见功能特性的实现,综合运用多种JAVA EE开发技术,提出多种解决方案,并深入讲座分析,对开发人员动手...

    SSH(Spring+Struts+Hibernate)轻量级购物软件Shopping演示系统(Java Web Edition)

    SSH(Spring+Struts+Hibernate)轻量级购物软件Shopping演示系统(Java Web Edition)技术要点:Spring+Struts+Hibernate三大框架整合,Jquery-treeview、DIV+CSS3、HTML5、JavaScript、分页组件pagination、MySQL。

    SSH(Spring+Struts+Hibernate)轻量级论坛Forum演示系统(Java Web Edition)

    SSH(Spring+Struts+Hibernate)轻量级论坛Forum演示系统(Java Web Edition): Spring+Struts+Hibernate框架、Pagination分页组件、JQuery、JSON、Ajax、DIV+CSS、JavaScript、HTML5。另建议使用相当于IE8.0以上的...

    跟我学Java_Web源代码

    跟我学Java_Web配套源代码,全书全!另外: Java Web开发是目前最...《跟我学Java Web》适合广大Java Web初学者、初步掌握Java技术的读者,想深入学习Struts2、SSH框架的开发者,以及从事Java Web开发工作的技术人员。

    Spring 2.0 + Struts 1.2 + Hibernate 3.2 + DWR 2.0 的JavaEE应用示例

    总结,该例示注释非常详细,演示Spring托管Hibernate和Struts的Action, 以及Spring的事务声明(包括1.x与2.x的用法)与非事务声明的使用方式。 使用DWR可以方便的使用Spring托管的持久层功能。 目的:希望广大Java...

    韩顺平java从入门到精通视频教程(全94讲)学习笔记整理(齐全)-共448页.docx

    2、java ee (j2ee)web开发 3、java me (j2me)手机开发 java se课程介绍 java面向对象编程(基础) java图开界面开发 java数据库编程 java文件io流编程 java网络编程 java多线程编程 java ee基础1 java面向对象编程--...

    跟我学javaweb全套ppt

    Java Web开发是目前最流行、使用最广泛的网站开发技术。...《跟我学Java Web》适合广大Java Web初学者、初步掌握Java技术的读者,想深入学习Struts2、SSH框架的开发者,以及从事Java Web开发工作的技术人员。

    JAVA上百实例源码以及开源项目

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...

    SSH2(spring3.2+strust2.3.4+hibernate4.2)框架演示代码

    SSH2(Spring + Struts2 + Hibernate)是一个流行的Java Web开发框架组合,用于构建企业级Web应用程序。Spring作为轻量级的控制反转(IoC)和面向切面编程(AOP)的容器框架,提供了依赖注入和事务管理等核心功能;...

    Struts 2 权威指南:基于WebWork核心的MVC开发 光盘

    本书所介绍的Struts 2已经完全超出了Struts 1框架原有的高度,Struts 2建立在Struts 1和WebWork两个框架整合的基础之上,因此提供了更多优秀的机制。 虽然Struts 1目前还未被完全淘汰,但Struts 1所表现出来的缺陷...

    Java Web编程实战宝典教学PPT

    Java Web编程实战宝典教学PPT内容包括:java,jsp,servlet,struts,spring,hibernate.课后习题答案

    JAVA上百实例源码以及开源项目源代码

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...

    LearnJavaWebDemos:Struts Spring 和 Hibernate 上的 Java Web 开发演示

    学习JavaWebDemos Struts Spring 和 Hibernate 上的 Java Web 开发演示SSH进阶

    struts自我学习过程程序以及说明

    本资源包括struts的学习程序,能够完全运行,当然,我是完全调试运行出来的,都是源代码原封上传,还有说明文档。还有自我总结资料,放到下一个文件夹当中上传,这里压缩只有这么多了,希望能去下载,那个全部是文档...

    Java EE实用开发指南

    基于Weblogic+EJB3+Struts2+Hibernate+Spring》是一本讲解如何使用Weblogicl0.3+EJB3+JPA+Struts2+Hibernate+Spring开发Java Web应用程序的实用性图书,书中在具体讲解SSH2开发技术的同时,结合MVC模式与My Eclipse...

    其他类别Struts+Hibernate实现MVC-strutsmvc.rar

    这个资料包包含了一个完整的示例项目,用于演示如何使用Struts和Hibernate框架来构建一个可扩展、易于维护的Web应用程序。在这个示例项目中,Struts框架负责处理用户的请求和响应,以及与视图层的交互。它提供了一个...

Global site tag (gtag.js) - Google Analytics