上传页面uploadExcel.jsp代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="http://localhost:8080/platform/js/jquery/jquery-1.7.2.min.js" type="text/javascript"></script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>上传excel</title>
<link href="http://localhost:8080/platform/css/style.css" rel="stylesheet" type="text/css">
<!-- 引入uploadify -->
<link rel="stylesheet" type="text/css" href="http://localhost:8080/platform/js/uploadify/uploadify.css">
<script src="http://localhost:8080/platform/js/uploadify/swfobject.js" type="text/javascript"></script>
<script src="http://localhost:8080/platform/js/uploadify/jquery.uploadify.min.js" type="text/javascript"></script>
<script type="text/javascript">
//关闭窗口
function closeWindow(){
var api = frameElement.api, W = api.opener;
api.close();
//刷新父页面
W.queryData();
}
//取消上传
function cancelUpload(){
$('#uploadify').uploadifyClearQueue();
}
function uploadFiles() {
$('#uploadify').uploadifyUpload();
}
$(document).ready(function() {
$("#uploadify").uploadify({
'uploader': 'http://localhost:8080/platform/js/uploadify/uploadify.swf',
'script': 'http://localhost:8080/platform/uploadFile.do',
'cancelImg': 'http://localhost:8080/platform/js/uploadify/cancel.png',
'folder': 'upload',
'queueID': 'fileQueue',
'auto': false,
'multi': false,//是否支持多文件上传
//'queueSizeLimit':2, //当允许多文件生成时,设置选择文件的个数,默认值:999
'sizeLimit':1024*1024*1,
'fileExt':'*.xls;*.XLS',
'fileDesc':'请选择2203版的excel文件',
'buttonImg':'http://localhost:8080/platform/js/uploadify/select.gif',
'onError':function(event,queueId,fileObj,errorObj){
setTimeout(function() {
$("#uploadify"+queueId).find(".percentage").html("- 文件过大");
}, 1);
},
'onComplete':function(event,queueId,fileObj,response,data){
alert(fileObj.name+" "+response);
}
});
});
</script>
</head>
<body style="background-color:#FFFFFF">
<br><br>
<fieldset class="search_fieldset2">
<legend>上传附件</legend>
<form id="form1" runat="server">
</form>
<table width="96%" border="0" align="center" >
<tr>
<td align="right" nowrap>选择要上传的文件:</td>
<td align="left" > <input type="file" name="uploadify" id="uploadify" /><font color="red"> 每个文件大小需小于1M </font>
<div id="fileQueue"></div>
</td>
</tr>
<tr>
<td colspan="2">
<table border="0" width="100%">
<tr>
<td align="center" class="my_buttons" >
<input id="uploadBtn" type="button" value="上传" onclick="uploadFiles()" />
<input id="restBtn" type="button" value="取消上传" onclick="cancelUpload()" />
<input id="restBtn" type="button" value="关闭" onclick="closeWindow()" />
</td>
</tr>
</table>
</td>
</tr>
</table>
</fieldset>
</body>
</html>
action /controller代码:FileAttachmentController.java
package com.platform.common.excel.action;
import java.io.File;
import java.io.IOException;
import java.io.Writer;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.UUID;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.longtech.configuration.BaseConfiguration;
import com.platform.common.util.LoggerUtil;
/**
*
* @Description: TODO
* @author chen
* @version 1.0,
* @date 2013-10-30 下午05:27:17
*/
@Controller
public class FileAttachmentController {
@RequestMapping(value = "/uploadFile.do")
public ModelAndView previewPieGraph(HttpServletRequest request,
HttpServletResponse response) throws IOException {
LoggerUtil.info(this.getClass(),"------uploadFile.do");
//"C:/upload/"; 指定上传的文件路径
String savePath = BaseConfiguration.getString("upload.root.path")+BaseConfiguration.getString("upload.file.excelData");
File f1 = new File(savePath);
//如果目录不存在 则 创建目录
if (!f1.exists()) {
f1.mkdirs();
}
DiskFileItemFactory fac = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(fac);
upload.setHeaderEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
Writer out = response.getWriter();
try {
List fileList = upload.parseRequest(request);
Iterator<FileItem> it = fileList.iterator();
String name = "";
String extName = "";
//遍历所有的上传文件
while (it.hasNext()) {
FileItem item = it.next();
if (!item.isFormField()) {
name = item.getName();
long size = item.getSize();
String type = item.getContentType();
if (name == null || name.trim().equals("")) {
continue;
}
//扩展名格式:
if (name.lastIndexOf(".") >= 0) {
extName = name.substring(name.lastIndexOf("."));
}
File file = null;
do {
//生成文件名:
name = new SimpleDateFormat("yyyy-MM-dd-hh-mm-ss").format(new Date()) +UUID.randomUUID().toString();
file = new File(savePath + name + extName);
} while (file.exists());
File saveFile = new File(savePath + name + extName);
//开始在 服务器中 写文件
item.write(saveFile);
}
}
out.write("上传成功");
} catch (FileUploadException e1) {
e1.printStackTrace();
out.write("上传失败:"+e1.getMessage());
} catch (Exception e) {
e.printStackTrace();
out.write("上传失败:"+e.getMessage());
}
out.flush();
return null;
}
}
分享到:
相关推荐
本项目着重解决如何在Spring MVC框架下配置并使用Uploadify,同时避免与Spring MVC自身的文件上传配置发生冲突。 首先,我们需要理解`Spring MVC`的文件上传机制。Spring MVC通过`MultipartResolver`接口处理多部分...
Uploadify v2.1.0版本是该系列的一个重要版本,它提供了更为灵活和丰富的配置选项,使得开发者可以根据实际需求定制上传组件。 #### 二、安装与配置 ##### 1. 下载与部署 - **第一步**:访问官方网站 ...
在本文中,我们将深入探讨如何使用Spring MVC框架与uploadify插件进行文件上传,特别是针对图片的上传。Spring MVC是Spring框架的一部分,专门用于构建Web应用程序,而uploadify是一款前端JavaScript插件,使得用户...
在本文中,我们将深入探讨如何利用Spring MVC的`multipartResolver`与第三方库uploadify协同工作,实现图片文件的上传和预览功能。 首先,`multipartResolver`是Spring MVC用来解析multipart请求的接口。默认情况下...
批量上传_uploadify_java”提供了一个基于jQuery插件Uploadify和Java后端实现批量上传的示例,非常适合开发者学习和参考。 首先,Uploadify是一款流行的jQuery插件,它允许用户通过拖放或选择文件按钮进行文件上传...
在Java环境中,Uploadify通常与Servlet或Spring MVC等框架配合,处理文件上传请求。 1. **Uploadify的工作原理**: Uploadify通过AJAX方式实现文件上传,用户选择文件后,文件会被分块上传,每个块独立发送请求。...
在本文中,我们将深入探讨如何在ASP.NET MVC4框架下,利用JQuery Dialog插件创建一个弹出对话框,并在其中集成Uploadify组件实现多文件上传功能。这将涉及前端JavaScript库、后端C#处理逻辑以及数据库交互,旨在提供...
- **jquery.uploadify.v2.1.0.min.js**:压缩版的Uploadify脚本,体积更小,适用于生产环境。 - **Uploadify v2.1.0 Manual.pdf**:官方手册,详细解释了插件的所有参数和使用方法,是学习和调试的重要参考资料。 ...
"uploadify java版 可上传多张图片" 这个标题揭示了我们即将探讨的是一个使用Java技术实现的、基于Uploadify插件的多图片上传功能。Uploadify是一款流行的前端文件上传工具,它允许用户通过异步方式上传多个文件,...
综上所述,"uploadify多文件上传(java版)"是一个结合了Uploadify前端库和Java后端技术的多文件上传解决方案,它提供了丰富的功能和高度的可定制性,适用于各种Web应用程序中的文件上传需求。在实际项目中,开发...
jquery.uploadify.v2.1.0.js 上传
在这个项目中,结合`Spring MVC`、`Java`和`JSP`,我们可以构建一个完整的文件上传解决方案。 首先,`Spring MVC`是Spring框架的一部分,用于处理Web应用中的模型-视图-控制器结构。在处理文件上传时,我们需要创建...
上传功能在我们的程序中是经常会用到的,而传统的http上传在... 那么今天我要给大家介绍额就是一款jQuery的无刷新上传插件 -Uploadify,他有免费版和收费版两种,免费版的是用Flash实现的,而收费版的是用html5实现的
综上所述,"uploadify java版"涉及的主要知识点包括:前端的Uploadify插件配置、后端Java Servlet的文件上传处理、文件的安全存储、错误处理机制以及性能优化策略。通过这些步骤,你可以构建一个完整的文件批量上传...
"uploadify java完整项目工程"是一个基于JSP、Servlet和Java技术实现的文件上传解决方案,主要特点是使用了Uploadify插件。Uploadify是一款流行的JavaScript库,它允许用户通过异步方式上传多文件,提升了用户体验。...
MVC 上传文件 uploadify …………………………………………………………………………………………………………………………………………………………………………………………………………………………………………...
本Demo项目`.NET Mvc结合 Uploadify上传Demo`旨在展示如何在ASP.NET MVC应用中集成Uploadify,实现高效且用户体验良好的文件上传功能。 首先,我们需要了解`Uploadify`的基本概念。Uploadify是一个基于jQuery的插件...
在这个最新的版本v2.1.0中,Uploadify 提供了更稳定、高效的上传体验,同时也包含了演示示例以便开发者更好地理解和应用。 Uploadify 的核心功能包括: 1. **多文件选择**:用户可以一次性选择多个文件进行上传,...
本Demo将展示如何将`jQuery Uploadify`与Java的Servlet技术进行整合,实现在后台服务器上处理文件上传的流程。 首先,我们需要了解`jQuery Uploadify`的核心概念。Uploadify通过AJAX和Flash技术实现了无刷新的文件...
本篇文章将详细介绍两种在Java中实现文件上传的方法:一种是利用JavaScript库uploadify,另一种是使用Spring框架。 一、Uploadify Uploadify是一款基于jQuery的文件上传插件,它允许用户在不刷新页面的情况下进行...