`
- 浏览:
2588 次
- 性别:
- 来自:
北京
-
上传页面代码
swfupload参数网上都有,可以查一下
upload_url: "uploadAction.action"//上传文件所请求的action
file_post_name:接收文件的aciton属性
在action中还要加上*FileName,*就是file_post_name你所设置的,然后设置setget方法。
button开头的是设置按钮属性
uploadsuccess等是设置回调,都在handler.js中.
<%@ page language="java" import="java.util.*" 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">
<html>
<head>
<link href="<%=basePath%>css/default.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="<%=basePath%>js/swfupload.js"></script>
<script type="text/javascript" src="<%=basePath%>js/swfupload.queue.js"></script>
<script type="text/javascript" src="<%=basePath%>js/fileprogress.js"></script>
<script type="text/javascript" src="<%=basePath%>js/handlers.js"></script>
<!-- 初始化swfupload 对象-->
<script type="text/javascript">
var upload1;
window.onload = function() {
upload1 = new SWFUpload({
// Backend Settings
upload_url: "uploadAction.action",
post_params: {"picSESSID" : "songhao"},
file_post_name: "fileData",
// File Upload Settings
file_size_limit : "102400", // 100MB
file_types : "*.*",
file_types_description : "All Files",
file_upload_limit : "10",
file_queue_limit : "0",
// Event Handler Settings (all my handlers are in the Handler.js file)
file_dialog_start_handler : fileDialogStart,
file_queued_handler : fileQueued,
file_queue_error_handler : fileQueueError,
file_dialog_complete_handler : fileDialogComplete,
upload_start_handler : uploadStart,
upload_progress_handler : uploadProgress,
upload_error_handler : uploadError,
upload_success_handler : uploadSuccess,
upload_complete_handler : uploadComplete,
// Button Settings
button_image_url : "images/XPButtonUploadText_61x22.png",
button_placeholder_id : "spanButtonPlaceholder1",
button_width: 61,
button_height: 22,
// Flash Settings
flash_url : "js/swfupload.swf",
custom_settings : {
progressTarget : "fsUploadProgress1",
cancelButtonId : "btnCancel1"
},
// Debug Settings
debug: false
});
}
</script>
</head>
<body>
<div id="content">
<h2>File Upload</h2>
<form action="" method="post" name="thisform" enctype="multipart/form-data">
<p>文件上传</p>
<table>
<tr valign="top">
<td>
<div>
<div class="fieldset flash" id="fsUploadProgress1">
<span class="legend">上传文件列表</span>
</div>
<div style="padding-left: 5px;">
<span id="spanButtonPlaceholder1"></span>
<input id="btnCancel1" type="button" value="Cancel Uploads" onclick="cancelQueue(upload1);"
disabled="disabled" style="margin-left: 2px; height: 22px; font-size: 8pt;" />
<br />
</div>
</div>
</td>
</tr>
</table>
</form>
</div>
</body>
</html>
action代码
package com.xpec.action;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.components.Form;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.xpec.enums.UploadState;
public class FileUpLoadAction extends ActionSupport{
/**
*
*/
private static final long serialVersionUID = 1L;
private File fileData;
private String fileDataFileName;
private String fileDataContentType;
public String getFileDataContentType() {
return fileDataContentType;
}
public void setFileDataContentType(String fileDataContentType) {
this.fileDataContentType = fileDataContentType;
}
public File getFileData() {
return fileData;
}
public void setFileData(File fileData) {
this.fileData = fileData;
}
public String getFileDataFileName() {
return fileDataFileName;
}
public void setFileDataFileName(String fileDataFileName) {
this.fileDataFileName = fileDataFileName;
}
public String fileUpLoad() throws IOException{
InputStream is = new FileInputStream(fileData);
File deskFile = new File("D:/upLoadFile/fileUp",this.getFileDataFileName());
OutputStream os = new FileOutputStream(deskFile);
byte [] bytefer = new byte[1024];
int length = 0 ;
while((length = is.read(bytefer) )>0)
{
os.write(bytefer,0,length);
}
os.close();
is.close();
return "success";
}
}
struts.xml
<action name="uploadAction" class="com.xpec.action.FileUpLoadAction" method="fileUpLoad">
<result name="success">/index.jsp</result>
</action>
上传成功之后会找寻index.jsp也就是你配置的,不回调转但是会找,会跳到handler.js里的uploadsuccess,serverdata就是index.jsp内容你需要用正则表达式取出相应的数据来
判断是否上传成功,弹出相应提示。
fileupload.jsp,fileuploadaction.action, index.jsp这个三文件是上传代码。其他的只是随意的测试。[size=large][/size]
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
Struts和SwfUpload是两种在Web开发中用于构建强大功能的应用工具,它们结合使用可以实现高效的文件上传功能。在本文中,我们将深入探讨这两个组件以及如何将它们整合以实现文件上传。 首先,Struts是一个基于MVC...
要实现"java+struts+swfupload文件上传下载",你需要完成以下步骤: 1. **集成SwfUpload**:在前端页面引入SwfUpload的JavaScript库,配置相关参数如上传URL、文件类型限制等,实现文件选择和上传触发事件。 2. **...
Struts2和SwfUpload是两个在Web开发中用于处理用户交互的重要工具,它们结合使用可以实现高效的大文件和多文件上传功能。Struts2是一个基于MVC(Model-View-Controller)架构的Java框架,它提供了强大的控制层支持,...
SWFUpload是一款开源的Flash文件上传组件,它允许在浏览器端实现多文件选择、文件预览、文件上传进度显示等功能。在Struts2应用中集成SWFUpload,可以解决上传文件时无进度反馈的问题,提高用户交互性。 集成步骤...
这个"三、struts2+swfUpload简单例子"很可能是关于如何集成这两个技术来创建一个高效的文件上传功能的教程。 在集成Struts2和SwfUpload的过程中,有几个关键知识点是必不可少的: 1. **Struts2框架**:Struts2提供...
本项目基于JAVA、Struts2框架以及swfupload插件,提供了一个完整的文件上传下载解决方案。以下是对这个项目的详细解读: 首先,**JAVA**作为后端编程语言,以其跨平台性和丰富的库资源被广泛应用于Web开发。在这里...
Struts2和SwfUpload是两个在Web开发中用于文件上传的工具,它们结合使用可以提供一种具有用户体验优化的文件上传功能,特别是包含了进度条显示,使得用户能够清晰地了解文件上传的状态。以下是对这两个技术及其结合...
在这个"四、struts2+swfUpload例子二"中,我们将深入探讨如何将这两者结合,以实现高效的文件上传功能。 首先,为了集成Struts2和SwfUpload,我们需要在项目中引入相应的依赖库。对于Struts2,这通常包括struts2-...
本示例解决了strut2+swfupload+extjs4文件上传过程中,后台struts接收不到上传文件的问题。而这个问题如果用servlet做后台可能就不存在。开发者可以用本例源码移植到自己项目中使用 。
"ext struts2 swfupload 跨域文件上传"这个主题涉及到三个关键技术和概念:EXTJS(Ext JS)、Struts2以及SwfUpload,它们共同解决了Web应用中的跨域文件上传问题。 EXTJS是一种强大的JavaScript库,用于构建富...
SWFUpload上传组件的一个完整的例子,后台由Struts2完成,有上传进度显示,可以多文件上传,如果你想使用SWFUpload组件但还不知道怎样使用,可以下载下来运行一下试试,看一下源码就知道了。
2. **多文件上传**:SwfUpload的核心功能是支持多个文件的批量上传。用户可以通过选择多个文件来一次性上传,减少了重复操作。 3. **进度条显示**:SwfUpload可以显示上传进度,让用户了解文件上传的状态,提高了...
本教程将详细讲解如何利用SWFUpload与Struts2框架来实现多文件上传的示例。 首先,让我们了解SWFUpload。SWFUpload是一款开源的Flash上传组件,它允许用户在不离开当前页面的情况下上传多个文件。通过在浏览器上...
SwfUpload是一款强大的JavaScript文件上传组件,它支持多文件上传功能,且在Web应用程序中广泛使用。本项目结合了jsp和servlet技术,同时也提供了与SSH框架的集成,使得文件上传功能可以在各种Java Web项目中无缝...
下面将详细介绍如何利用SWFUpload与Struts2来实现多文件上传。 **一、SWFUpload组件介绍** SWFUpload 是一个JavaScript库,它利用Flash技术提供了一个高级的文件上传体验。它的主要特性包括: 1. **多文件选择**...
Struts2是一个基于MVC设计模式的Java Web框架,而SWFupload则是一个JavaScript库,用于实现Flash的文件上传功能。两者结合使用时,可能会遇到一些冲突问题,主要是由于它们处理文件上传的方式不同所导致的。下面将...
总之,SwfUpload结合Struts2框架能提供一个高效且用户友好的多文件上传解决方案。开发者需要熟悉这两个工具的特性和接口,才能有效地集成并实现功能。在实践中,不断调整和优化,可以打造出满足各种业务需求的文件...
使用struts2整合swfupload,实现包含进度条的文件上传模块 SWFUpload的主要特点 * 可以同时上传多个文件; * 类似AJAX的无刷新上传; * 可以显示上传进度; * 良好的浏览器兼容性; * 兼容其他JavaScript库 (例如:...
本文将深入探讨SwfUpload的工作原理、配置与实现多文件上传的方法,以及如何在Java后端与Struts2框架下进行配合。 首先,SwfUpload 的工作原理基于Flash对象,它可以模拟浏览器的文件输入控件,允许用户选择多个...