- 浏览: 29079 次
文章分类
- 全部博客 (23)
- java (23)
- 一个不会重复的HelloWord 随机大小写.... (1)
- T-SQL查询进阶-10分钟理解游标 (1)
- java.lang.IncompatibleClassChangeError (1)
- Timer定时任务 (1)
- struts2文件下载示例 (1)
- 做了一个脚本,方便大家用sunpot做中文全文索引 (1)
- html 初始化加载flex (1)
- 一个儿童学习英语的有趣网址e-learningforkids (1)
- 如何在Apache FtpServer基础上增加或者修改FTP命令 (1)
- 空间信息到GML的转换 (1)
- 正则表达式复习 (1)
- 几个事情随便说一下 (1)
- 捕获IP数据包的Java类Jpcap (1)
- 下决心学习IBM的DB2相关 (1)
- iOS开发之缓存(一):内存缓存 (1)
- 从权限管理看互联网产品的盈利方式 (1)
- static_cast、dynamic_cast reinterpret_cast和const_ cast (1)
- ext 加载慢的原因 (1)
- 做个男人,做个成熟的男人,做个有城府的男人 (1)
- Android NDK开发入门实例 (1)
- 彩信制作之SMIL规范 (1)
- java的socket编程总结大全 (1)
- timer timertask (1)
最新评论
-
wwwang89:
楼主,写的太好了,,求demo一份:wwwang89@163. ...
iOS开发之缓存(一):内存缓存 -
qkjava:
标记一下子
做个男人,做个成熟的男人,做个有城府的男人 -
LiHu0512:
嗯,学习学习,当成熟的男人!
做个男人,做个成熟的男人,做个有城府的男人 -
mywjch:
恩,仔细看看自己有什么不足
做个男人,做个成熟的男人,做个有城府的男人 -
奥义之舞:
怎么出来这么多HTML标签
做个男人,做个成熟的男人,做个有城府的男人
?
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 = {
<span style="white-space: pre;"> </span>@Result(name = "list", location = "/message/dlog/dlog_list.jsp"),
<span style="white-space: pre;"> </span>@Result(name = "download", type = "stream<span style="color: #ff0000;">(类型为流)</span>", params = { "contentType",
<span style="white-space: pre;"> </span>"application<span style="color: #ff0000;">(应用程序)</span>/octet-stream;charset=ISO8859-1", "inputName<span style="color: #ff0000;">(输入文件名称)</span>",
<span style="white-space: pre;"> </span>"fstream", "contentDisposition", "attachment;filename=<span style="color: #ff0000;">${downloadFileName}</span>",
<span style="white-space: pre;"> </span>"bufferSize", "4096" }),
<span style="white-space: pre;"> </span>@Result(name = "invalid.token",type="redirect",location = "task!list.action",params = {"message", "请不要重复提交" })?
<span style="white-space: pre;"> </span>},?
<span style="white-space: pre;"> </span>interceptorRefs = {
<span style="white-space: pre;"> </span>@InterceptorRef(value = "pageInterceptor", params = { "includeMethods", "list" }),
<span style="white-space: pre;"> </span>@InterceptorRef(value = "token", params = { "includeMethods", "save" }),
<span style="white-space: pre;"> </span>@InterceptorRef("topDtStack")?
<span style="white-space: pre;"> </span>})
public class DataLogAction extends Struts2Action<DataLog>{
?
<span style="white-space: pre;"> </span>private static final long serialVersionUID = 1792436660779570837L;
?
<span style="white-space: pre;"> </span>@Autowired
<span style="white-space: pre;"> </span>private DataLogService dataLogService;
<span style="white-space: pre;"> </span>private String statDate;
<span style="white-space: pre;"> </span>private String endDate;
<span style="white-space: pre;"> </span><span style="color: #ff0000;">private InputStream fstream;</span>
<span style="white-space: pre;"> </span><span style="color: #ff0000;">private String inputPath;</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>private String fileName</span>;
<span style="white-space: pre;"> </span>
? ? public void setInputPath(String value) {
? ? ? ? inputPath = value;
? ? }
?
? ? public void setFileName(String fileName) {
<span style="white-space: pre;"> </span>this.fileName = fileName;
<span style="white-space: pre;"> </span>}
?
<span style="white-space: pre;"> </span>@Override
<span style="white-space: pre;"> </span>protected void doList() throws Exception {
<span style="white-space: pre;"> </span>list = dataLogService.queryDataLog(statDate, endDate, getModel().getDataType());
<span style="white-space: pre;"> </span>}
?
<span style="color: #ff0000;">//取得文件名称</span>
?
<span style="white-space: pre;"> </span><span style="color: #ff0000;">public String getDownloadFileName(){</span>
<span style="color: #ff0000;">? ? <span style="white-space: pre;"> </span>String downFileName=fileName;</span>
<span style="color: #ff0000;">? ? <span style="white-space: pre;"> </span>try {</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>downFileName=new String(downFileName.getBytes(),"ISO8859-1");</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>} catch (Exception e) {</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>e.printStackTrace();</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>}</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>return downFileName;</span>
<span style="color: #ff0000;">? ? }</span>
<span style="color: #ff0000;">//下载文件</span>
<span style="white-space: pre;"> </span><span style="color: #ff0000;">public String downLog () {</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>inputPath = AppContext.getProperties("breakDataDir")+fileName;</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>try {</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>fstream = new FileInputStream(new File(inputPath));</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>} catch (FileNotFoundException e) {</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>e.printStackTrace();</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>}</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>return "download";</span>
<span style="color: #ff0000;"><span style="white-space: pre;"> </span>}</span>
<span style="white-space: pre;"> </span>
<span style="white-space: pre;"> </span>public DataLogService getDataLogService() {
<span style="white-space: pre;"> </span>return dataLogService;
<span style="white-space: pre;"> </span>}
?
<span style="white-space: pre;"> </span>public void setDataLogService(DataLogService dataLogService) {
<span style="white-space: pre;"> </span>this.dataLogService = dataLogService;
<span style="white-space: pre;"> </span>}
?
<span style="white-space: pre;"> </span>public String getStatDate() {
<span style="white-space: pre;"> </span>return statDate;
<span style="white-space: pre;"> </span>}
?
<span style="white-space: pre;"> </span>public void setStatDate(String statDate) {
<span style="white-space: pre;"> </span>this.statDate = statDate;
<span style="white-space: pre;"> </span>}
?
<span style="white-space: pre;"> </span>public String getEndDate() {
<span style="white-space: pre;"> </span>return endDate;
<span style="white-space: pre;"> </span>}
?
<span style="white-space: pre;"> </span>public void setEndDate(String endDate) {
<span style="white-space: pre;"> </span>this.endDate = endDate;
<span style="white-space: pre;"> </span>}
?
<span style="white-space: pre;"> </span>public InputStream getFstream() {
<span style="white-space: pre;"> </span>return fstream;
<span style="white-space: pre;"> </span>}
?
<span style="white-space: pre;"> </span>public void setFstream(InputStream fstream) {
<span style="white-space: pre;"> </span>this.fstream = fstream;
<span style="white-space: pre;"> </span>}
?
}
?
?
HTML :代码:<a href='dlog!downLog.action?fileName=<s:property value="#dlog.errorDetail"/>'>错误详细</a>
发表评论
-
timer timertask
2012-02-08 16:07 1009<p style="text-al ... -
java的socket编程总结大全
2012-02-08 15:12 785<span style="color: ... -
彩信制作之SMIL规范
2012-02-03 09:44 1085参考地址:http://blog.163.com/ch ... -
Android NDK开发入门实例
2012-01-31 13:58 1431<h1 align="center&q ... -
做个男人,做个成熟的男人,做个有城府的男人
2012-01-31 13:19 1849<p align="cente ... -
ext 加载慢的原因
2011-12-28 11:54 1427内网系统使用EXT是不应该慢,慢只能说明是EXT没有用 ... -
static_cast、dynamic_cast reinterpret_cast和const_ cast
2011-12-20 17:04 1250<span style="col ... -
从权限管理看互联网产品的盈利方式
2011-12-20 10:54 706咋们做产品,基 ... -
iOS开发之缓存(一):内存缓存
2011-12-19 15:03 1097前面一片文章介绍了如何上传和下载文件,这篇文章将介绍一 ... -
下决心学习IBM的DB2相关
2011-12-19 10:04 813开始学习一本书《DB2 UDB V8.1 Certif ... -
捕获IP数据包的Java类Jpcap
2011-12-14 19:09 813... -
几个事情随便说一下
2011-12-14 11:49 8081最近上网奇慢无比,基本无法完成留言操作,所以如果有问 ... -
正则表达式复习
2011-12-13 11:14 864<p class="MsoNorma ... -
空间信息到GML的转换
2011-12-12 15:04 750<p class="MsoNorm ... -
如何在Apache FtpServer基础上增加或者修改FTP命令
2011-12-12 14:15 1498<p class="MsoN ... -
一个儿童学习英语的有趣网址e-learningforkids
2011-12-09 12:34 3343最经在一直在研究儿童如何学英语方面的东西,发现一些有意 ... -
html 初始化加载flex
2011-12-09 10:39 1378<span style="color: ... -
做了一个脚本,方便大家用sunpot做中文全文索引
2011-12-08 17:44 841sunspot ( https://github.co ... -
Timer定时任务
2011-12-06 09:29 796利用Timer类创建出一个对象,其中有schedule ... -
java.lang.IncompatibleClassChangeError
2011-12-05 18:41 3423?? 今天在修改代码之后用maven重新打包替换原来的 ...
相关推荐
以下是对"完整Struts2文件上传示例"的详细解释: 1. **配置Struts2框架** 在Struts2中,我们首先需要在`struts.xml`配置文件中添加相关的拦截器(interceptor)来处理文件上传。`struts.multipart.parser`属性应...
在这个“Struts2实现文件下载功能”的示例中,我们将深入探讨如何利用Struts2框架来实现在web应用中让用户下载文件的功能。 首先,我们需要理解文件下载的基本原理。在Web应用中,当用户点击一个链接或提交一个表单...
在Struts2中,文件上传和下载是常见的功能需求,特别是在处理用户交互和数据交换时。这篇博客文章提供的"struts2文件上传下载源代码"旨在帮助开发者理解和实现这些功能。 文件上传功能允许用户从他们的设备上传文件...
这个“struts2验证框架示例”提供了深入理解并实际操作Struts2验证功能的机会。 首先,让我们了解一下Struts2验证框架的基本概念。验证框架基于两个主要组件:Validation拦截器和Action类中的验证配置。Validation...
这个"Struts2+Hibernate示例"项目中,sh.sql可能是一个数据库脚本文件,用于初始化数据库表结构;而sh文件可能是一个包含具体代码或者配置信息的文件,例如Struts2的Action类、Hibernate的实体类或配置文件。通过...
这个"Struts2应用程序示例"是专为初学者和开发者设计的,它利用Eclipse 3.3作为集成开发环境,JDK 6.0作为Java运行环境,以及Tomcat 6.0作为应用服务器,提供了实际操作的平台来理解和实践Struts2的核心概念。...
通过学习和实践这个Struts2框架程序示例,开发者可以深入理解Struts2的工作原理,掌握如何创建Action、编写Interceptor、配置Action与Result的映射,以及如何利用Struts2的其他特性来提高开发效率和代码质量。...
通过这个Struts2文件上传示例,我们可以了解到文件上传的基本流程,包括前端表单设计、后台Action处理以及Struts2配置。在实际开发中,我们还可以根据需求扩展这个示例,比如增加多文件上传、异步上传等功能。
本示例将详细介绍如何在Struts2框架下实现单一文件上传、多文件上传以及文件下载功能。 1. 单一文件上传: 在Struts2中,我们可以使用`org.apache.struts2.interceptor.FileUploadInterceptor`拦截器来处理文件...
在Struts中实现文件下载是一项常见的功能,尤其在处理用户请求获取服务器上的静态或动态资源时。这篇博文将深入探讨如何在Struts框架下实现文件下载的功能。 首先,我们需要了解文件下载的基本原理。当用户点击下载...
Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括文件上传和下载。在Struts2中处理文件上传和下载是常见的需求,对于构建交互式的Web应用来说至关重要。以下将详细介绍Struts2中如何实现这两个...
标题"Struts2示例demo"暗示我们将探讨一个实际的应用场景,即如何使用Struts2框架来开发Web应用。这个示例可能包括创建Action类、配置struts.xml、设定JSP视图和处理用户请求等多个步骤。 描述中的"Struts示例demo...
这个"最简单的Struts2的代码示例"旨在帮助初学者快速理解和上手Struts2框架的基本用法。 首先,我们从MVC架构开始。在Struts2中,模型由业务逻辑处理,视图负责展示用户界面,而控制器接收用户的请求,处理业务逻辑...
总之,这个项目实例为使用Struts2和Uploadify实现带进度条的多文件上传及下载功能提供了一个基础模板,对于学习和实践此类功能的开发者来说是一个有价值的参考。通过深入研究和理解这个项目的代码,可以提升对Struts...
这个示例程序旨在帮助初学者理解如何在Struts2框架下实现文件上传。 首先,我们需要了解Struts2文件上传的核心概念和组件。在Struts2中,文件上传主要依赖于Apache Commons FileUpload库。这个库提供了处理HTTP多...
这个“Struts2 HelloWorld示例”是一个基础的Maven项目,旨在帮助初学者理解如何在实际开发环境中设置和运行一个简单的Struts2应用。 首先,让我们了解Maven。Maven是一个项目管理工具,它通过使用一个项目对象模型...
这个“Struts2 文件上传和下载示例程序”是一个演示如何在Struts2中实现这两个功能的实例。 文件上传是Web应用程序中的一项重要功能,允许用户从本地计算机选择文件并将其传输到服务器。在Struts2中,这一过程涉及...
在这个"Struts 2简单小示例"中,我们可能看到一个简单的Action类、配置文件、以及一个展示结果的JSP页面。通过学习和实践这个示例,开发者能够对Struts 2的工作原理和基本操作有一个清晰的理解,为进一步深入学习和...