首页 > 其他 > 详细

uploadify

时间:2017-02-22 16:43:57      阅读:334      评论:0      收藏:0      [点我收藏+]

<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib prefix="shiro" uri="http://www.springside.org.cn/tags/shiro" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %>
<%@ taglib prefix="joda" uri="http://www.joda.org/joda/time/tags" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<html>
<head>
    <meta charset="UTF-8">
    <title>批量上传</title>

    <link href="${ctx}/static/js/uploadify/uploadify.css" rel="stylesheet" type="text/css" />
    <script src="${ctx}/static/js/jquery-1.9.1.min.js" type="text/javascript"></script>
    <script type="text/javascript" src="${ctx}/static/js/uploadify/jquery.uploadify.min.js"></script>

</head>
<body style="margin: 0px;height:1500px;width:100%;">


<a class="task_btn_upload" href="javascript:$(‘#file_upload‘).uploadify(‘upload‘,‘*‘)">开始上传</a>
<a class="task_btn_upload" href="javascript:$(‘#file_upload‘).uploadify(‘cancel‘,‘*‘)">取消上传</a>
<input type="file" name="file_upload" id="file_upload"/>
<%--<input type="text" name="id" id="id"/>--%>

<div id="custom-queue"></div>

<script>

    $(function() {
        $("#file_upload").uploadify({
                ‘auto‘:false,       //是否允许自动上传
                ‘swf‘ : ‘${ctx}/static/js/uploadify/uploadify.swf?var=‘+(new Date()).getTime(), //引入flash
                ‘buttonText‘:‘浏览‘,     //设置button文字
                ‘removeCompleted‘: true,//是否移除掉队列中已经完成上传的文件。false为不移除
                ‘removeTimeout‘: 3,//设置上传完成后删除掉文件的延迟时间,默认为3秒。
                ‘width ‘:‘120‘,      //按钮宽度
                ‘method‘:‘PSOT‘,                     //提交方式
                ‘multi‘:‘true‘,      //是否多文件上传
                ‘fileObjName‘ : ‘myFile‘,   //文件对象名称,用于后台获取文件对象时使用
                ‘preventCaching‘:‘true‘,   //防止浏览器缓存
                ‘formData‘:{‘emergencyId‘:1111}, //动态传参
                ‘queueID‘: ‘custom-queue‘,  //显示在某个div的位置  custom-queue div的id
                ‘fileSizeLimit‘: 0,
                ‘uploader‘ : ‘${ctx}/measure/upload;jsessionid=<%=session.getId()%>‘ ,    //提交后台方法路径

        //onUploadStart 动态传参的关键
        ‘onUploadStart‘:function(){
            $("#file_upload").uploadify("settings","formData",
                    {‘emergencyId‘: $("#id").val()});
        },
        ‘onFallback‘ : function() {//检测FLASH失败调用
            alert("您未安装FLASH控件,无法上传图片!请安装FLASH控件后再试。");

        },

        ‘onUploadSuccess‘:function(file, data, response){
            var Data = eval(‘(‘+data+‘)‘);
            // alert(file.name+"上传"+Data.result);
        },

        onError: function(event, queueID, file)
        {
            alert(file.name + " 上传失败");
        },
        ‘onQueueComplete‘:function(stats) {
            //版本不一样方法也存在差异
            alert("成功上传的文件数:" + stats.uploadsSuccessful + " =上传出错的文件数:" +stats.uploadsErrored + " -上传的文件总大小:" + stats.uploadSize);
//          cancel();
        }
    });

    });

</script>



</body>
</html>


<!-- SpringMVC上传文件时,需配置MultipartResolver处理器 -->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <!-- 指定所上传文件的总大小不能超过800KB......注意maxUploadSize属性的限制不是针对单个文件,而是所有文件的容量之和 -->
        <!--<property name="maxUploadSize" value="10485760"/>-->
    </bean>


@RequestMapping(value = "/upload", method = RequestMethod.POST)
    @ResponseBody
    public String upload(HttpServletResponse response,HttpServletRequest request) throws IOException {

        String responseStr="";

        MultipartHttpServletRequest multipartRequest =       (MultipartHttpServletRequest) request;

        Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();

       // 文件保存路径  ctxPath本地路径

        String ctxPath=uploadPath;

        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMM");

        String ymd = sdf.format(new Date());

        ctxPath += File.separator + ymd + File.separator;

        System.out.println("ctxpath="+ctxPath);

       // 创建文件夹

        File file = new File(ctxPath);

        if (!file.exists()) {
            file.mkdirs();
        }

        String fileName = null;

        for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {

         // 上传文件

            MultipartFile mf = entity.getValue();

            fileName = mf.getOriginalFilename();//获取原文件名

            System.out.println("filename="+fileName);

            File uploadFile = new File(ctxPath + fileName);

            try {

                FileCopyUtils.copy(mf.getBytes(), uploadFile);

                responseStr="上传成功";

            } catch (IOException e) {

                responseStr="上传失败";

                e.printStackTrace();

            }

        }

        return responseStr;

    }



uploadify

原文:http://www.cnblogs.com/yaoyao66123/p/6429438.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!