Webwork的文件上传是采用拦截器来实现的
下面我们按照从客户端到服务器端的顺序讲讲如何配置:
1.第一点要注意的是form表单的两个属性
method="post" enctype="multipart/form-data" 一定要正确设置<o:p></o:p>
2.Action配置:上传文件的action要配置拦截器<o:p></o:p>
<interceptor-ref name="fileUploadStack"></interceptor-ref><o:p></o:p>
UploadAction类:这个类中的方法名字跟form表单中文件上传输入筐关系很密切<o:p></o:p>
//这3个字段是必须的<o:p></o:p>
private File upload; //取得上传得文件<o:p></o:p>
private String contentType; //文件类型<o:p></o:p>
private String fileName; //原始文件名<o:p></o:p>
public void setUpload(File file) {<o:p></o:p>
this.upload = file;<o:p></o:p>
}<o:p></o:p>
<o:p> </o:p>
public String getContentType() {<o:p></o:p>
return contentType;<o:p></o:p>
}<o:p></o:p>
<o:p> </o:p>
public void setContentType(String contentType) {<o:p></o:p>
this.contentType = contentType;<o:p></o:p>
}<o:p></o:p>
<o:p> </o:p>
public String getUploadFileName() {<o:p></o:p>
return fileName;<o:p></o:p>
}<o:p></o:p>
<o:p> </o:p>
public void setUploadFileName(String fileName) {<o:p></o:p>
this.fileName = fileName;<o:p></o:p>
}<o:p></o:p>
<o:p> </o:p>
<form name="form1" method="post" action="adSave.action"<o:p></o:p>
enctype="multipart/form-data"><o:p></o:p>
上传文件:<input type="file" name="upload" ><o:p></o:p>
</form><o:p></o:p>
注意这儿的输入框<o:p></o:p>
name=’upload’ 对应UploadAction的public void setUpload(File file)<o:p></o:p>
文件获取方法为public String getUploadFileName(),方法格式为getXXXFileName();<o:p></o:p>
<o:p> </o:p>
Webwork默认的是用commons fileupload工具上传,它需要一个临时目录 在webwork.properties中可以配置webwork.multipart.saveDir=/temp<o:p></o:p>
<o:p> </o:p>
处理程序为<o:p></o:p>
protected void uploadFile(File uploadFile, String savePath, String fileName)throws IOException{<o:p></o:p>
if (null != uploadFile) {<o:p></o:p>
FileOutputStream outputStream = new FileOutputStream(savePath + fileName);<o:p></o:p>
FileInputStream fileIn = new FileInputStream(uploadFile);<o:p></o:p>
byte[] buffer = new byte[1024];<o:p></o:p>
int len;<o:p></o:p>
while ((len = fileIn.read(buffer)) > 0) {<o:p></o:p>
outputStream.write(buffer, 0, len);<o:p></o:p>
}<o:p></o:p>
fileIn.close();<o:p></o:p>
outputStream.close();<o:p></o:p>
}<o:p></o:p>
}<o:p></o:p>
<o:p></o:p>
分享到:
相关推荐
在本教程中,我们将探讨如何利用WebWork实现文件上传功能,特别是针对Excel文件的处理。 首先,理解WebWork的MVC模式至关重要。在WebWork框架中,控制器负责接收用户请求,调用业务逻辑,并将结果传递给视图进行...
在这个“WebWork 文件上传 多个文件上传 范例”中,我们将深入探讨如何使用WebWork实现多文件上传的功能。 首先,了解文件上传的基本原理是必要的。在HTTP协议中,文件上传通常通过POST请求实现,其中包含了...
以下是一个简单的WebWork文件上传示例: ```java import org.apache.struts.upload.FormFile; ... public class UploadAction extends ActionSupport { private FormFile file; public String execute() { if ...
在本例中,我们关注的是使用WebWork框架在Java环境中实现文件上传。WebWork是一个轻量级的MVC(Model-View-Controller)框架,它提供了处理HTTP请求和响应的强大工具,包括文件上传。 首先,我们需要了解WebWork的...
WebWork提供了丰富的特性,如类型转换、验证、国际化、文件上传和下载等,这些功能使得开发者可以更高效地构建高质量的应用程序。 #### 二、文件上传基础知识 文件上传是Web应用程序中的常见需求之一。在WebWork中...
WebWork是一个基于Java的轻量级MVC框架,它提供了处理多文件上传的能力。本篇文章将深入探讨如何在WebWork框架下实现多文件上传,并结合实际案例进行解析。 首先,了解WebWork框架的基本原理是必要的。WebWork通过...
在提供的文件列表中,我们看到有多个以".mht"结尾的文件,这是MHT(MHTML)文件,是一种单个文件中存储网页内容的格式,可能包含了关于WebWork文件上传和下载的讨论或者示例代码。例如,"webwork 文件下载 - New - ...
在Web开发中,文件上传和下载是常见的功能需求,本Demo展示了如何在WebWork框架下实现这两个操作。 首先,我们要理解上传和下载的基本原理。文件上传是指用户通过Web表单选择本地文件,然后将其发送到服务器的过程...
**一、WebWork文件上传** 1. **前端页面**:在HTML页面中,我们需要一个`<input type="file">`标签让用户选择要上传的文件。例如: ```html ``` 注意`enctype="multipart/form-data"`,这是上传文件时...
本文主要从三个方面给大家介绍webwork文件上传下载知识,包括以下三个方面: 1. 包装 Request 请求 2. 获取文件上传的解析类 3. 项目实战配置和使用 Web上传和下载应该是很普遍的一个需求,无论是小型网站还是大...
**一、WebWork文件上传** 1. **前端页面** 在HTML页面中,你需要创建一个`<input type="file">`标签让用户选择要上传的文件。例如: ```html 上传" /> ``` 注意,`enctype="multipart/form-data"`是必须...
在本文中,我们将深入探讨如何使用WebWork和iBatis框架来实现文件上传的功能。WebWork是一个基于Action的MVC(Model-View-Controller)框架,而iBatis则是一个SQL映射框架,用于简化Java应用程序中的数据库操作。...
本文将深入探讨WebWork2.2.7中的简单文件上传功能,这在现代Web应用中是必不可少的,允许用户上传图片、文档等各种类型的数据。 在Web开发中,文件上传通常涉及到表单提交和服务器端的处理。WebWork2.2.7支持使用...
"fileupload+dwr2+webwork2实现带进度条上传文件"这个主题涉及到三个关键技术和组件:FileUpload、Direct Web Remoting (DWR) 和 WebWork2,它们协同工作以提供一个带有进度条的高效、用户友好的文件上传体验。...
2. **解压文件**:解压后的目录包含必要的文件和目录,例如`webwork-2.x.jar`(主库文件)、`webwork-example.war`(示例应用)、`docs`(文档)、`lib`(依赖库)等。 3. **部署至Web容器**:将下载的WebWork部署到...
- 通过`<include>`节点,可以引入其他配置文件,如`webwork-default.xml`,这有助于将配置进行模块化,保持配置文件的清晰和可维护性。 - `<package>`节点定义了一个包,可以理解为一个命名空间或一组相关Action的...
webwork上传文件pdf文件说明文档
在本文中,我们将深入探讨如何使用WebWork框架来实现一个简单的图片上传功能,并在网页上显示上传的图片。WebWork是Java Web开发中...理解WebWork的工作机制和文件上传的基本流程,对于开发复杂的Web应用程序至关重要。
然后,我们利用WebWork的Action来处理文件上传。在Action类中,可以定义一个字段来接收上传的文件,例如`private File uploadedFile; private String uploadedFileContentType; private String uploadedFileFileName...
10. 其他功能:支持异步调用、国际化、文件上传和防止重复提交等。 WebWork通过其丰富的特性和强大的功能,解决了Web层开发中的诸多挑战,提高了开发效率和应用质量。对于开发者来说,理解并掌握WebWork的原理和...