多图上传类:
@Controller public class UploadPicController extends BaseController { /** * 上传图片 * @return * @throws Exception */ @RequestMapping(value="uploadPic",produces="application/json;charset=UTF-8",method=RequestMethod.POST) @ResponseBody public void uploadPic(Integer picType) throws Exception{ MultipartHttpServletRequest MultipartRequest = (MultipartHttpServletRequest) this.request; MultipartFile file = null; if(picType == null){ file = MultipartRequest.getFile("picfile"); }else{ if(picType==1){ file = MultipartRequest.getFile("picfile1"); } else if(picType==2) { file = MultipartRequest.getFile("picfile2"); } else if(picType==3){ file = MultipartRequest.getFile("picfile3"); } else if(picType==4){ file = MultipartRequest.getFile("picfile4"); } else { picType=1; file = MultipartRequest.getFile("picfile"); } } String fileName = file.getOriginalFilename(); long size = file.getSize(); DecimalFormat df = new DecimalFormat("#0.00"); double dd = (double)size; String format = df.format(dd/1024/1024); String suffix = fileName.substring(fileName.lastIndexOf(".") + 1); List<String> fileTypeList = Arrays.asList(Constants.FILETYPE_IMG); Map<String, Object> map = new HashMap<String, Object>(); if (!fileTypeList.contains(suffix)) {// 文件格式不对 map.put("error", "error_type"); printOutMsg(JsonMapper.toJson(map)); } if (size > Constants.FILESIZE_IMG) {// 文件太大 map.put("error", "error_size"); printOutMsg(JsonMapper.toJson(map)); } map.put("picType", picType); String upload_path = ""; try { upload_path = UploadTools.uploadFile(file.getBytes(), suffix); } catch (Exception e) { e.printStackTrace(); UploadTools.deleFileByFilePath(upload_path); } map.put("path", upload_path); map.put("type",suffix); map.put("size",format); // map.put("path", "http://file1.infobigdata.com/group1/M00/00/BD/rBAKbljvOT6TAKxcAARmcil0MfY837.png"); printOutMsg(JsonMapper.toJson(map)); }
多图上传的jsp
<%@ page language="java" import="java.util.*" contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="str" uri="http://www.bigdata.com/jstl/string"%> <%@page import="org.apache.commons.lang.math.NumberUtils"%> <%@ page import="com.bigdata.catchs.common.Constants"%> <html lang="zh-cn"> <head> <title>SWFUpload</title> <link href="/plugins/SWFUploadv2.2.0/css/default.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="/plugins/SWFUploadv2.2.0/swfupload/swfupload.js"></script> <script type="text/javascript" src="/plugins/SWFUploadv2.2.0/js/swfupload.queue.js"></script> <script type="text/javascript" src="/plugins/SWFUploadv2.2.0/js/fileprogress.js"></script> <script type="text/javascript" src="/plugins/SWFUploadv2.2.0/js/handlers.js"></script> <script type="text/javascript"> var swfu; window.onload = function() { var settings = { flash_url : "/plugins/SWFUploadv2.2.0/swfupload/swfupload.swf", upload_url: "/uploadPic", use_query_string: true, file_post_name : "picfile", file_size_limit : "100 MB", file_types : "*.*", file_types_description : "All Files", file_upload_limit : 10, //配置上传个数 file_queue_limit : 0, custom_settings : { progressTarget : "fsUploadProgress", cancelButtonId : "btnCancel" }, debug: false, // Button settings button_image_url: "/plugins/SWFUploadv2.2.0/images/TestImageNoText_65x29.png", button_width: "65", button_height: "29", button_placeholder_id: "spanButtonPlaceHolder", button_text: '<span class="theFont">浏览</span>', button_text_style: ".theFont { font-size: 16; }", button_text_left_padding: 12, button_text_top_padding: 3, 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, queue_complete_handler : queueComplete }; swfu = new SWFUpload(settings); }; </script> </head> <body> <div id="header"> <h1 id="logo"><a href="/">SWFUpload</a></h1> <div id="version">v2.2.0</div> </div> <div id="content"> <form id="form1" action="" method="post" enctype="multipart/form-data"> <p>点击“浏览”按钮,选择您要上传的文档文件后,系统将自动上传并在完成后提示您。</p> <p>请勿上传包含中文文件名的文件!</p> <div class="fieldset flash" id="fsUploadProgress"> <span class="legend">快速上传</span> </div> <div id="divStatus">0 个文件已上传</div> <div> <span id="spanButtonPlaceHolder"></span> <input id="btnCancel" type="button" value="取消所有上传" onclick="swfu.cancelQueue();" disabled="disabled" style="margin-left: 2px; font-size: 8pt; height: 29px;" /> </div> </form> </div> </body> </html>