SpringMVC+jquery-fineuploader 文件上傳

springmvc文件上傳真頭疼,網上搜了半天沒發現都是TMD的用submit按鈕提交到後臺的,就沒有插件的嗎? html

剛開始找到個ajaxfileUpload.還能夠,單文件上傳不錯 ,怎麼搞的網上百度一下不少. java

最後發現了fineUploader 應該是ajaxfileUpload的 升級版 吧? git

示例以下: github

jsp中: ajax

$(document).ready(function(){
	    var thumbnailuploader = new qq.FineUploader({
	      element: $('#addyoujianfujian')[0],
	      request: {
	        endpoint: '${ytu}/integrate/testManger/uploadFileForIE?folder=<%=folder%>&'
	        
	      },
	      multiple: false,
	      validation: {
	        allowedExtensions: ['jpeg', 'jpg', 'gif', 'png','xls','doc','xlsx','docx','pdf','txt'],
	        sizeLimit: 40960000 // 50 kB = 50 * 1024 bytes16.      
	      },
	      callbacks: {
	        onComplete: function(id, fileName, responseJSON) {
	          if (responseJSON.success) {
	            $("#addyoujianfujian").append(fileName+";");
	          }
	        }
	      },
	      debug: true
	    });
});

Fine Uploader 官網:http://fineuploader.com/index.html spring

java:看這裏:https://github.com/Widen/fine-uploader/tree/master/test/fineuploadermvc

這個地址之後可能還會變更,你們本身在網上百度吧。 app

可是 我使用的是springMVC的controller,獲取不到servercontext. jsp

最後在同事的幫助下單獨爲IE寫了個上傳的方法.代碼 以下 : ide

/**
	 * 
	 * 方法描述: 上傳文件 做 者: chalist 日 期: 2012-11-22-下午04:45:34
	 * 
	 * @param myfiles
	 * @return
	 * @throws IOException
	 *             返回類型: String[]
	 */
	public void uploadattachment(String folder, HttpServletRequest request)
			throws IOException
	{
		try
		{
			MultipartHttpServletRequest fileRequest = (MultipartHttpServletRequest)request;
			List<MultipartFile> files = fileRequest.getFiles("qqfile");
			for (MultipartFile myfile : files)
			{ 
				String path = myfile.getOriginalFilename();
				String fileName = path;
				InputStream is = myfile.getInputStream();
				path = FileManager.T_MAIL_ATTACHMENT_PATH + folder + File.separator + fileName;
				uploadfiles(path, is);// 上傳文件
			}
		} catch (Exception e)
		{
			e.printStackTrace();
			logger.error("上傳文件異常:"+e.getMessage());
		}
	}

 測試後發現 文件 能上傳了.可是頁面上卻提示上傳失敗.最後 發現 這個插件是根據response 回寫的內容提示判斷文件上傳失敗與否的,那就好辦了,回寫個就是了.發現fineuploader其提供的java 文件UploadReceiver含有這樣的方法,哈哈正好.

代碼以下:

UploadReceiver ur = new UploadReceiver();
ur.writeResponse(resp.getWriter(), null);
到此爲止.有問題,請跟貼.但願你跟貼的時候,世界末日還沒到來!
相關文章
相關標籤/搜索