zoukankan      html  css  js  c++  java
  • Java Miniui实现批量上传文件demo 201906221520

    可能需要的jar包:

    需要miniui(类似easyui).

    Test2019062201.jsp

    <%@ page language="java" contentType="text/html; charset=utf-8"
        pageEncoding="utf-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Insert title here</title>
        <script src="scripts/boot.js" type="text/javascript"></script>
        <script src="fileupload/swfupload/swfupload.js" type="text/javascript"></script>
        <script src="multiupload/src/multiupload.js" type="text/javascript"></script>
        <link href="multiupload/src/multiupload.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    
        <div id="multiupload1" class="uc-multiupload" style=" 600px; height: 300px" 
            flashurl="fileupload/swfupload/swfupload.swf"
            uploadurl="UploadServlet" _autoUpload="true" _limittype="*.*"
            onuploaderror="onUploadError" onuploadsuccess="onUploadSuccess"
        >
        </div>
    
        <script type="text/javascript">
        
            var fileCount = 0;
             var grid = mini.get("multiupload1");
        
             mini.parse();
             
            function getData() {
                var data = grid.getData();
                var json = mini.encode(data);
                alert(json);
            }
    
            function onUploadSuccess(e) {
                fileCount++;
                var data = grid.getData();
                if(data.length == fileCount){
                    mini.alert("全部文件上传成功!");    
                }
            }
            
            function onUploadError(e) {
                mini.alert("上传失败:" + e.file + ' ' + e.message);
            }
        
        </script>
    
    </body>
    </html>

    UploadServlet.java

    package org.jimmy.testwebproject2019012602.servlet;
    
    import java.io.File;
    import java.io.IOException;
    import java.util.Date;
    import java.util.Enumeration;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    
    import com.oreilly.servlet.MultipartRequest;
    
    /**
     * @author ラピスラズリ(Dawn)
     * @date 2019年6月22日 下午3:10:01
     * @detail 批量上传文件
     */
    public class UploadServlet extends HttpServlet {
        
        private static final long serialVersionUID = 1L;
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            doPost(request, response);
        }
    
        @SuppressWarnings("rawtypes")
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            String uploadPath = "upload";
            HttpSession session = request.getSession();
            String saveDirectory = session.getServletContext().getRealPath("/" + uploadPath);    
            MultipartRequest multi = new MultipartRequest(request, saveDirectory,
                100 * 1024 * 1024, "UTF-8");
            //如果有上传文件, 则保存到数据内
            Enumeration files = multi.getFileNames();
            while (files.hasMoreElements()) {
                String name = (String) files.nextElement();
                File f = multi.getFile(name);
                if(f != null){
                    //读取上传后的项目文件, 导入保存到数据中
                    String fileName = multi.getFilesystemName(name);
                    response.getWriter().write(fileName + "(" + new Date() + ")");    //可以返回一个JSON字符串, 在客户端做更多处理                    
                }
            }
        }
    
    }
    2015年10月-2016年3月 总计:5个月.
    2016年11月-2017年6月 总计:7个月.
    2017年7月-2018年4月 总计:9个月.
    2018年5月-2018年5月 总计:1个月.
    2018年6月-2018年12月 总计:6个月.
    2019年1月-2019年12月 总计11个月.
    2020年2月-2021年2月 总计13个月.
    所有总计:5+7+9+1+6+11+13=52个月(4年4个月).
    本人认同二元论.我是理想主义者,现实主义者,乐观主义者,有一定的完美主义倾向.不过,一直都是咸鱼(菜鸟),就算有机会,我也不想咸鱼翻身.(并不矛盾,因为具体情况具体分析)
    英语,高等数学,考研,其他知识学习打卡交流QQ群:946556683
  • 相关阅读:
    CF1051F The Shortest Statement 题解
    CF819B Mister B and PR Shifts 题解
    HDU3686 Traffic Real Time Query System 题解
    HDU 5969 最大的位或 题解
    P3295 萌萌哒 题解
    BZOJ1854 连续攻击游戏 题解
    使用Python编写的对拍程序
    CF796C Bank Hacking 题解
    BZOJ2200 道路与航线 题解
    USACO07NOV Cow Relays G 题解
  • 原文地址:https://www.cnblogs.com/JimmySeraph/p/11069002.html
Copyright © 2011-2022 走看看