`
xitong
  • 浏览: 6401247 次
文章分类
社区版块
存档分类
最新评论

webwork中文件上传实现

 
阅读更多
step1:
页面定义如下
<form action="upload.do" enctype="multipart/form-data" method="post">
<input type="file" name="doc"/>
......................... 省略
</form>

step2
action 如下
public class UploadAction extends ActionSupport {
.....................................
private File doc;//doc与页面取一样的名字

public void setDoc(File doc) {
this.doc = doc;
}

//当然还可以使用以下的咚咚
/*
* public void setDocContentType(String docContentType) {
* this.docContentType = docContentType; }
*
*//**
*
* @author weip
* @time 0:23:24 2006-5-11
* @param docFileName
*/
/*
* public void setDocFileName(String docFileName) { this.docFileName =
* docFileName; }
*/

/**
*
*/
/*
* private String docContentType;
*
*//**
*
*/
/*
* private String docFileName;
*/

.............................................................

}

当程序进入到action当中时,你可以开始处理上面代码中的doc,此时文件已上传到服务器中的一个临时目录(同时被注入到action中就是你看到的doc),此临时目录由webwork.properties指定,你必须将此文件拷贝到你需要的目录,否则action执行完毕,此文件会被删除,准确说是拦截器的后处理删除了临时文件,这一段结论的前提是你使用拦截器处理上传

step3
处理配置文件,配置拦截器

<action name="upload" class="com.mofile.baby.web.action.signup.UploadAction">

<result name="success" type="freemarker">/page/signup/uploadfile.htm</result>
<interceptor-ref name="fileUpload"/>
<interceptor-ref name="defaultWebStack"/>

</action>

step4
对于webwork.properties的一些处理
webwork in action上推荐使用webwork.multipart.parser=jakarta而不是默认的 pell,如果使用前者,不要忘了在你的lib中加入commons-fileupload.jar


需要注意的问题:
你在使用
fileUpload传拦截器的时候应该避免使用execAndWait拦截器,否则很有可能会出现空指针,因为execAndWait拦截器会在另一个线程处理action,而原来的线程会删掉临时文件,所以当你在action中处理文件的时候很有可能文件已被删掉,虽然这并非一定会出现,但毕竟不安全
分享到:
评论

相关推荐

    webwork中上传文件

    在本例中,我们关注的是使用WebWork框架在Java环境中实现文件上传。WebWork是一个轻量级的MVC(Model-View-Controller)框架,它提供了处理HTTP请求和响应的强大工具,包括文件上传。 首先,我们需要了解WebWork的...

    WebWork 文件上传

    在这个“WebWork 文件上传 多个文件上传 范例”中,我们将深入探讨如何使用WebWork实现多文件上传的功能。 首先,了解文件上传的基本原理是必要的。在HTTP协议中,文件上传通常通过POST请求实现,其中包含了...

    webwork文件上传

    在本教程中,我们将探讨如何利用WebWork实现文件上传功能,特别是针对Excel文件的处理。 首先,理解WebWork的MVC模式至关重要。在WebWork框架中,控制器负责接收用户请求,调用业务逻辑,并将结果传递给视图进行...

    webwork 上传文件与下载文件 使用笔记

    在WebWork中,文件上传主要通过`FileUploadInterceptor`来实现。该拦截器处理HTTP请求中的文件上传数据,并将其封装成`java.io.File`对象或其他形式以便于进一步处理。 #### 三、配置文件上传 在WebWork中进行文件...

    webwork 多文件上传

    本篇文章将深入探讨如何在WebWork框架下实现多文件上传,并结合实际案例进行解析。 首先,了解WebWork框架的基本原理是必要的。WebWork通过Action类处理HTTP请求,它将用户交互与业务逻辑分离,提供了一种优雅的...

    webwork上传下载

    在提供的文件列表中,我们看到有多个以".mht"结尾的文件,这是MHT(MHTML)文件,是一种单个文件中存储网页内容的格式,可能包含了关于WebWork文件上传和下载的讨论或者示例代码。例如,"webwork 文件下载 - New - ...

    webwork 文件上传下载

    参考博文链接:[iteye博客](https://cxl2012.iteye.com/blog/2011487),该文章可能提供了更详尽的WebWork文件上传下载实现细节。学习并掌握这些知识,将有助于你构建更加健壮和用户体验良好的Web应用程序。

    webwork的上传和下载的Demo

    在Web开发中,文件上传和下载是常见的功能需求,本Demo展示了如何在WebWork框架下实现这两个操作。 首先,我们要理解上传和下载的基本原理。文件上传是指用户通过Web表单选择本地文件,然后将其发送到服务器的过程...

    fileupload+dwr2+webwork2实现带进度条上传文件

    "fileupload+dwr2+webwork2实现带进度条上传文件"这个主题涉及到三个关键技术和组件:FileUpload、Direct Web Remoting (DWR) 和 WebWork2,它们协同工作以提供一个带有进度条的高效、用户友好的文件上传体验。...

    Webwork 实现文件上传下载代码详解

    本文主要从三个方面给大家介绍webwork文件上传下载知识,包括以下三个方面: 1. 包装 Request 请求 2. 获取文件上传的解析类 3. 项目实战配置和使用 Web上传和下载应该是很普遍的一个需求,无论是小型网站还是大...

    webwork+ibatis上传文件简单实例

    在本文中,我们将深入探讨如何使用WebWork和iBatis框架来实现文件上传的功能。WebWork是一个基于Action的MVC(Model-View-Controller)框架,而iBatis则是一个SQL映射框架,用于简化Java应用程序中的数据库操作。...

    WebWork2.2.7之简单文件上传

    总结,WebWork2.2.7通过提供文件上传支持,使得开发者可以方便地实现用户端到服务器端的文件传输。理解并掌握这一功能对于开发涉及文件交互的Web应用程序至关重要。在实际应用中,要考虑到安全性、性能优化以及用户...

    使用webwork实现上传图片并显示

    在本文中,我们将深入探讨如何使用WebWork框架来实现一个简单的图片上传功能,并在网页上显示上传的图片。WebWork是Java Web开发中...理解WebWork的工作机制和文件上传的基本流程,对于开发复杂的Web应用程序至关重要。

    webwork详细讲解.doc

    2. **配置Action**:在`webwork.xml`文件中添加对`HelloAction`的配置,包括Action的名称、输入参数以及返回结果等。 3. **创建视图**:编写一个简单的JSP页面作为视图,用来显示返回的信息。 4. **运行应用**:启动...

    WebWork文档(PDF)

    WebWork还提供了诸如表单验证、文件上传、Ajax支持等实用工具,简化了常见的Web开发任务。 10. **与其他框架的集成** WebWork可以与Spring、Hibernate等其他流行框架无缝集成,进一步提升了其在复杂项目中的实用...

    webwork2.2.7在action中利用commons-fileupload.jar进行上传或直接读取文件流的配置与源代码及实例详解

    在这个教程中,我们将探讨如何在WebWork 2.2.7的Action中利用Apache Commons FileUpload库来实现文件上传功能,并处理文件流。Apache Commons FileUpload是一个强大的库,专门用于处理HTTP请求中的多部分/表单数据,...

    WebWork深入浅出.doc

    10. 其他功能:支持异步调用、国际化、文件上传和防止重复提交等。 WebWork通过其丰富的特性和强大的功能,解决了Web层开发中的诸多挑战,提高了开发效率和应用质量。对于开发者来说,理解并掌握WebWork的原理和...

    .NET实现文件上传、图片上传功能

    在.NET框架中,C#语言提供了丰富的功能来实现文件上传和图片上传的处理。这篇文章将深入探讨如何使用C#在Web应用中实现这些功能,并在网页上按比例显示上传的图片。 首先,我们需要理解文件上传的基本流程。在Web...

    详解Webwork中Action 调用的方法

    在`service`方法中,调用了`wrapRequest`来封装request对象,这通常是为了处理如文件上传等特殊类型的请求数据。接着,`getParameterMap`、`getSessionMap`、`getApplicationMap`等方法被用于获取请求、session和...

Global site tag (gtag.js) - Google Analytics