`
79343654
  • 浏览: 46634 次
  • 性别: Icon_minigender_1
  • 来自: 太原
社区版块
存档分类
最新评论

struts2文件下载示例

阅读更多

 

package com.topdt.policesms.action;

 

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.InputStream;

 

import org.apache.struts2.convention.annotation.Action;

import org.apache.struts2.convention.annotation.InterceptorRef;

import org.apache.struts2.convention.annotation.Namespace;

import org.apache.struts2.convention.annotation.ParentPackage;

import org.apache.struts2.convention.annotation.Result;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.context.annotation.Scope;

import org.springframework.stereotype.Controller;

 

import com.topdt.frame.base.Struts2Action;

import com.topdt.frame.common.AppContext;

import com.topdt.policesms.model.DataLog;

import com.topdt.policesms.service.DataLogService;

 

/**

 * 数据日志

 * @author Administrator

 *

 */

@Controller

@Scope("prototype")

@ParentPackage(value = "gloab-package")

@Namespace(value = "/message")

@Action(value = "dlog", results = {

@Result(name = "list", location = "/message/dlog/dlog_list.jsp"),

@Result(name = "download", type = "stream(类型为流)", params = { "contentType",

"application(应用程序)/octet-stream;charset=ISO8859-1", "inputName(输入文件名称)",

"fstream", "contentDisposition", "attachment;filename=${downloadFileName}",

"bufferSize", "4096" }),

@Result(name = "invalid.token",type="redirect",location = "task!list.action",params = {"message", "请不要重复提交" }) 

}, 

interceptorRefs = {

@InterceptorRef(value = "pageInterceptor", params = { "includeMethods", "list" }),

@InterceptorRef(value = "token", params = { "includeMethods", "save" }),

@InterceptorRef("topDtStack") 

})

public class DataLogAction extends Struts2Action<DataLog>{

 

private static final long serialVersionUID = 1792436660779570837L;

 

@Autowired

private DataLogService dataLogService;

private String statDate;

private String endDate;

private InputStream fstream;

private String inputPath;

private String fileName;

    public void setInputPath(String value) {

        inputPath = value;

    }

 

    public void setFileName(String fileName) {

this.fileName = fileName;

}

 

@Override

protected void doList() throws Exception {

list = dataLogService.queryDataLog(statDate, endDate, getModel().getDataType());

}

 

//取得文件名称

 

public String getDownloadFileName(){

    String downFileName=fileName;

    try {

downFileName=new String(downFileName.getBytes(),"ISO8859-1");

} catch (Exception e) {

e.printStackTrace();

}

return downFileName;

    }

//下载文件

public String downLog () {

inputPath = AppContext.getProperties("breakDataDir")+fileName;

try {

fstream = new FileInputStream(new File(inputPath));

} catch (FileNotFoundException e) {

e.printStackTrace();

}

return "download";

}

public DataLogService getDataLogService() {

return dataLogService;

}

 

public void setDataLogService(DataLogService dataLogService) {

this.dataLogService = dataLogService;

}

 

public String getStatDate() {

return statDate;

}

 

public void setStatDate(String statDate) {

this.statDate = statDate;

}

 

public String getEndDate() {

return endDate;

}

 

public void setEndDate(String endDate) {

this.endDate = endDate;

}

 

public InputStream getFstream() {

return fstream;

}

 

public void setFstream(InputStream fstream) {

this.fstream = fstream;

}

 

}

 

 

HTML :代码:<a href='dlog!downLog.action?fileName=<s:property value="#dlog.errorDetail"/>'>错误详细</a>

分享到:
评论

相关推荐

    完整struts2文件上传示例

    以下是对"完整Struts2文件上传示例"的详细解释: 1. **配置Struts2框架** 在Struts2中,我们首先需要在`struts.xml`配置文件中添加相关的拦截器(interceptor)来处理文件上传。`struts.multipart.parser`属性应...

    struts2实现文件下载功能

    在这个“Struts2实现文件下载功能”的示例中,我们将深入探讨如何利用Struts2框架来实现在web应用中让用户下载文件的功能。 首先,我们需要理解文件下载的基本原理。在Web应用中,当用户点击一个链接或提交一个表单...

    struts2文件上传下载源代码

    在Struts2中,文件上传和下载是常见的功能需求,特别是在处理用户交互和数据交换时。这篇博客文章提供的"struts2文件上传下载源代码"旨在帮助开发者理解和实现这些功能。 文件上传功能允许用户从他们的设备上传文件...

    struts2验证框架示例

    这个“struts2验证框架示例”提供了深入理解并实际操作Struts2验证功能的机会。 首先,让我们了解一下Struts2验证框架的基本概念。验证框架基于两个主要组件:Validation拦截器和Action类中的验证配置。Validation...

    Struts2+hibernate示例

    这个"Struts2+Hibernate示例"项目中,sh.sql可能是一个数据库脚本文件,用于初始化数据库表结构;而sh文件可能是一个包含具体代码或者配置信息的文件,例如Struts2的Action类、Hibernate的实体类或配置文件。通过...

    Struts2 应用程序示例

    这个"Struts2应用程序示例"是专为初学者和开发者设计的,它利用Eclipse 3.3作为集成开发环境,JDK 6.0作为Java运行环境,以及Tomcat 6.0作为应用服务器,提供了实际操作的平台来理解和实践Struts2的核心概念。...

    Struts2框架程序示例

    通过学习和实践这个Struts2框架程序示例,开发者可以深入理解Struts2的工作原理,掌握如何创建Action、编写Interceptor、配置Action与Result的映射,以及如何利用Struts2的其他特性来提高开发效率和代码质量。...

    Struts2文件上传示例

    通过这个Struts2文件上传示例,我们可以了解到文件上传的基本流程,包括前端表单设计、后台Action处理以及Struts2配置。在实际开发中,我们还可以根据需求扩展这个示例,比如增加多文件上传、异步上传等功能。

    struts2文件上传下载示例

    本示例将详细介绍如何在Struts2框架下实现单一文件上传、多文件上传以及文件下载功能。 1. 单一文件上传: 在Struts2中,我们可以使用`org.apache.struts2.interceptor.FileUploadInterceptor`拦截器来处理文件...

    Struts的文件下载

    在Struts中实现文件下载是一项常见的功能,尤其在处理用户请求获取服务器上的静态或动态资源时。这篇博文将深入探讨如何在Struts框架下实现文件下载的功能。 首先,我们需要了解文件下载的基本原理。当用户点击下载...

    struts2中的文件上传和下载示例

    Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括文件上传和下载。在Struts2中处理文件上传和下载是常见的需求,对于构建交互式的Web应用来说至关重要。以下将详细介绍Struts2中如何实现这两个...

    Struts2示例demo

    标题"Struts2示例demo"暗示我们将探讨一个实际的应用场景,即如何使用Struts2框架来开发Web应用。这个示例可能包括创建Action类、配置struts.xml、设定JSP视图和处理用户请求等多个步骤。 描述中的"Struts示例demo...

    最简单的Struts2的代码示例

    这个"最简单的Struts2的代码示例"旨在帮助初学者快速理解和上手Struts2框架的基本用法。 首先,我们从MVC架构开始。在Struts2中,模型由业务逻辑处理,视图负责展示用户界面,而控制器接收用户的请求,处理业务逻辑...

    struts2_uploadify带进度条的多文件上传下载

    总之,这个项目实例为使用Struts2和Uploadify实现带进度条的多文件上传及下载功能提供了一个基础模板,对于学习和实践此类功能的开发者来说是一个有价值的参考。通过深入研究和理解这个项目的代码,可以提升对Struts...

    Struts2文件上传程序示例

    这个示例程序旨在帮助初学者理解如何在Struts2框架下实现文件上传。 首先,我们需要了解Struts2文件上传的核心概念和组件。在Struts2中,文件上传主要依赖于Apache Commons FileUpload库。这个库提供了处理HTTP多...

    Struts2 HelloWorld示例(Maven项目)

    这个“Struts2 HelloWorld示例”是一个基础的Maven项目,旨在帮助初学者理解如何在实际开发环境中设置和运行一个简单的Struts2应用。 首先,让我们了解Maven。Maven是一个项目管理工具,它通过使用一个项目对象模型...

    struts1上传下载示例

    本文档旨在详细介绍如何使用Struts1框架完成文件的上传与下载功能,并且能够支持远程操作。这为那些需要在网络环境中交换文件的应用程序提供了非常实用的功能。 #### 二、环境搭建 在开始之前,我们需要确保开发...

    struts2 文件上传和下载示例程序

    这个“Struts2 文件上传和下载示例程序”是一个演示如何在Struts2中实现这两个功能的实例。 文件上传是Web应用程序中的一项重要功能,允许用户从本地计算机选择文件并将其传输到服务器。在Struts2中,这一过程涉及...

    Struts 2简单小示例

    在这个"Struts 2简单小示例"中,我们可能看到一个简单的Action类、配置文件、以及一个展示结果的JSP页面。通过学习和实践这个示例,开发者能够对Struts 2的工作原理和基本操作有一个清晰的理解,为进一步深入学习和...

Global site tag (gtag.js) - Google Analytics