uploadify3.1 api 可参考:(点击打开链接

需要springmvc的jar包

1、upload.jsp(主要代码)

  1. <script type="text/javascript" charset="UTF-8"
  2. src="${pageContext.request.contextPath}/js/jquery1.11.js"></script>
  3. <script type="text/javascript" charset="UTF-8"
  4. src="${pageContext.request.contextPath}/static/llsfw/js/upload/upload.js"></script>
  5. <script type="text/javascript" charset="UTF-8"
  6. src="${pageContext.request.contextPath}/static/llsfw/common/uploadify/jquery.uploadify.min.js"></script>
  7. <div id="uploader">
  8. <p>
  9. <input type="file" name="file_upload" id="file_upload" />
  10. </p>
  11. <a href="javascript:$('#file_upload').uploadify('upload','*')">上传</a>
  12. <a href="javascript:$('#file_upload').uploadify('stop')">取消上传</a>
  13. <div id="uploader_queue"></div>
  14. <div id="uploader_msg"></div>
  15. <div id="uploader_view"></div>
  16. </div>

2、upload.js

  1. $(function() {
  2. $("#file_upload").uploadify({
  3. 'auto' : false,
  4. 'method' : "get",
  5. 'formData' : {'folder' : 'file'},
  6. 'height' : 30,
  7. 'swf' : basePath+'static/llsfw/common/uploadify/uploadify.swf', // flash
  8. 'uploader' : basePath+'uploadController/upload', // 数据处理url
  9. 'width' : 120,
  10. 'fileTypeDesc' : '只能是xls...',
  11. 'fileTypeExts' : '*.xls',
  12. 'fileSizeLimit' : '10500KB',
  13. 'buttonText' : '选择文件',
  14. 'uploadLimit' : 5,
  15. 'successTimeout' : 5,
  16. 'requeueErrors' : false,
  17. 'removeTimeout' : 10,
  18. 'removeCompleted' : false,
  19. 'queueSizeLimit' :10,
  20. 'queueID'  : 'uploader_queue',
  21. 'progressData' : 'speed',
  22. 'onInit' : function (){},
  23. // 单个文件上传成功时的处理函数
  24. 'onUploadSuccess' : function(file, data, response){
  25. $("#uploader_view").append('<div height="60" >'+data+'</div>');
  26. },
  27. 'onQueueComplete' : function(queueData) {
  28. $('#uploader_msg').html(queueData.uploadsSuccessful + ' 个文件上传成功。');
  29. }
  30. });
  31. });

3、UploadController.java

  1. package com.llsfw.core.controller.upload;
  2. import java.io.File;
  3. import java.io.IOException;
  4. import java.util.Iterator;
  5. import javax.servlet.http.HttpServletRequest;
  6. import javax.servlet.http.HttpServletResponse;
  7. import org.springframework.stereotype.Controller;
  8. import org.springframework.web.bind.annotation.RequestMapping;
  9. import org.springframework.web.multipart.MultipartFile;
  10. import org.springframework.web.multipart.MultipartHttpServletRequest;
  11. import org.springframework.web.multipart.commons.CommonsMultipartResolver;
  12. import com.llsfw.core.controller.base.BaseController;
  13. @Controller
  14. @RequestMapping("uploadController")
  15. public class UploadController extends BaseController {
  16. @RequestMapping("init")
  17. public String init() {
  18. return "llsfw/upload/upload";
  19. }
  20. @RequestMapping("upload")
  21. public void upload(HttpServletRequest request, HttpServletResponse response) {
  22. try {
  23. String savePath = "C://uploads/";
  24. File dirPath = new File(savePath);
  25. if (!dirPath.exists()) {
  26. dirPath.mkdirs();
  27. }
  28. // 解析器解析request的上下文
  29. CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver(
  30. request.getSession().getServletContext());
  31. // 先判断request中是否包涵multipart类型的数据,
  32. if (multipartResolver.isMultipart(request)) {
  33. // 再将request中的数据转化成multipart类型的数据
  34. MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;
  35. @SuppressWarnings("rawtypes")
  36. Iterator iter = multiRequest.getFileNames();
  37. while (iter.hasNext()) {
  38. MultipartFile file = multiRequest.getFile((String) iter.next());
  39. if (file != null) {
  40. String fileName = file.getOriginalFilename();
  41. System.out.println(fileName);
  42. File localFile = new File(savePath + fileName);
  43. // 写文件到本地
  44. file.transferTo(localFile);
  45. response.getWriter().print(fileName+"        上传成功!");
  46. }
  47. }
  48. }
  49. } catch (IOException e) {
  50. // TODO Auto-generated catch block
  51. e.printStackTrace();
  52. }
  53. }
  54. }

springMVC+uploadify3.1 文件上传 demo的更多相关文章

  1. 使用SpringMVC框架实现文件上传和下载功能

    使用SpringMVC框架实现文件上传和下载功能 (一)单个文件上传 ①配置文件上传解释器 <!—配置文件上传解释器 --> <mvc:annotation-driven>&l ...

  2. (转)SpringMVC学习(九)——SpringMVC中实现文件上传

    http://blog.csdn.net/yerenyuan_pku/article/details/72511975 这一篇博文主要来总结下SpringMVC中实现文件上传的步骤.但这里我只讲单个文 ...

  3. SpringMvc入门五----文件上传

      知识点: SpringMvc单文件上传 SpringMvc多文件上传   这里我直接演示多文件上传,单文件的上传就不说了,不过代码都是现成的. 效果预览:   DEMO图:     添加文件上传j ...

  4. SpringMVC+BUI实现文件上传(附详解,源码下载)

    中午有限时间写这博文,前言就不必多说了,直奔主题吧. BUI是一个前端框架,关于BUI的介绍请看博主的文章那些年用过的一些前端框架. 下面我们开始实例的讲解! 一.效果演示: 上传成功后,会发现本地相 ...

  5. 2017/2/12:springMVC的简单文件上传跟拦截器

    1.写文件上传的界面jsp代码如下重点为文件上传标签的类型 2.写登录成功跟失败的界面:成功自己写 3.写springMVC的文件上传的controller的方法 4.最后一步配置spring-ser ...

  6. springMVC + hadoop + httpclient 文件上传请求直接写入hdfs

    1.首先是一个基于httpclient的java 应用程序,代码在这篇文章的开头:点击打开链接 2.我们首先写一个基于springMVC框架的简单接收请求上传的文件保存本地文件系统的demo,程序代码 ...

  7. 深入springMVC源码------文件上传源码解析(下篇)

    在上篇<深入springMVC------文件上传源码解析(上篇) >中,介绍了springmvc文件上传相关.那么本篇呢,将进一步介绍springmvc 上传文件的效率问题. 相信大部分 ...

  8. springMVC实现多文件上传

    <h2>上传多个文件 实例</h2> <form action="/workreport/uploadMultiFile.html" method=& ...

  9. WebSite 文件上传Demo

    知识点: 1 <!--上传文件时:        1.必须使用Post方式来提交数据        2.必须设置表单的enctype属性        3.必须在表单中包含文件域.input t ...

随机推荐

  1. Codeforces Round #447

    QAQ #include<stdio.h> #include<string.h> #include<stdlib.h> #include<vector> ...

  2. [INS-30131] 执行安装程序验证所需的初始设置失败问题解决,windows下oracle安装步骤

    [INS-30131] 执行安装程序验证所需的初始设置失败问题解决,windows下oracle安装步骤 配置: 系统:windows10 数据库:Oracle Database 12c 第 1 版 ...

  3. YARN环境搭建 之 二:CentOS7.0 JDK配置

    Hadoop是Java写的,他无法使用Linux预安装的OpenJDK,因此安装hadoop前需要先安装JDK(1.6以上)   原材料:在Oracle官网下载的32位JDK:     说明: 1.C ...

  4. Java代码运用及算法思路养成——用*号输出形状

    简单的了解了一些循环算法后,尝试用循环算法,输出形状图形 例1矩形与平行四边形的比较(可以看做矩形的每一行在输出前都输出了矩形长度数量-1的空格数量并且依次递减) 例2三角形(三角形可看做半个矩形,考 ...

  5. ML:流形学习

    很多原理性的东西需要有基础性的理解,还是篇幅过少,所以讲解的不是特别的清晰. 原文链接:http://blog.sciencenet.cn/blog-722391-583413.html 流形(man ...

  6. OnLineML:时序数据挖掘

    关于时序分析: 我们跟随时间的脚步,试图解释现在.理解过去.甚至预测未来........ 原文链接:http://blog.sciencenet.cn/home.php?mod=space&u ...

  7. 关于 Windows 10 如何扩展分区与合并分区

    前言 相信大部分人都遇见磁盘不够用的问题吧,然后都在后悔当初为什么就给 x 盘分了 10G 的容量吧. 不过没关系,自从 Windows 7 开始( xp 我也不知道有毛有),Windows 自带的磁 ...

  8. LINQ(Language Integrated Query)

    LINQ http://www.cnblogs.com/lifepoem/archive/2011/12/16/2288017.html LINQ是.NET Framework 3.5的新特性,其全称 ...

  9. 优动漫PAINT漫画和插画方面软件特色

    优动漫PAINT也就是我们常说的clip studio paint(CSP)的中文版本,它是一款功能强大的漫画.插画绘制软件,它搭载了绘制漫画和插画所需的所有功能,包括丰富的笔工具.超强的笔压感应和手 ...

  10. .apply .call方法的区别及使用 .apply第二个参数为数组,.call第二个参数为参数列表, 相同点:第一个参数都为Function函数内部的this对象.

    Function.apply(obj,args)方法能接收两个参数 obj:这个对象将代替Function类里this对象 args:这个是数组,它将作为参数传给Function(args--> ...