zoukankan      html  css  js  c++  java
  • 【Java__文件上传】web页面同时上传文件和参数

    code

        @RequestMapping("/uploadFile")
        @ResponseBody
        public AjaxResult uploadFile(HttpServletRequest request, HttpServletResponse response) throws Exception {
            boolean isMultipart = ServletFileUpload.isMultipartContent(request);
            if (!isMultipart) {
                return new AjaxResult(0, "isMultipart error");
            }
            String type = request.getParameter("type");
            if (StrUtils.isEmpty(type)) {
                return new AjaxResult(0, "type error");
            }
            boolean isOk = false;
            String imgUrl = "";
            try {
                // FileItem 是表单中的每一个元素的封装  创建一个 FileItem 的工厂类
                FileItemFactory factory = new DiskFileItemFactory();
                // 创建一个文件上传处理器(装饰设计模式)
                ServletFileUpload upload = new ServletFileUpload(factory);
                // 解析请求
                List<FileItem> items = upload.parseRequest(request);
                for (FileItem fileItem : items) {
                    if (fileItem.isFormField()) {
                        continue;
                    }
                    String savePathDir = request.getServletContext().getRealPath("/upload/" + getExId(request) + "/" + type + "/");
                    File file = new File(savePathDir);
                    if (!file.exists()) file.mkdir();
                    String fileName = UUID.randomUUID() + fileItem.getName().substring(fileItem.getName().lastIndexOf("."));
                    fileItem.write(new File(savePathDir + fileName));
                    imgUrl = request.getContextPath() + "/upload/" + getExId(request) + "/" + type + "/" + fileName;
                    isOk = true;
                    break;
                }
            } catch (Exception e) {
                e.printStackTrace();
                logger.error(e.getMessage());
                return AjaxResult.fail();
            }
            AjaxResult ajaxResult = AjaxResult.success();
            if (isOk) {
                ajaxResult.getMap().put("filename", imgUrl);
            } else {
                ajaxResult.setCode(0);
                ajaxResult.setMsg("上传失败");
                File file = new File(imgUrl);
                if (file.exists()) {
                    file.delete();
                }
            }
            return ajaxResult;
        }
    
  • 相关阅读:
    正则化--L1正则化(稀疏性正则化)
    机器学习分类算法之随机森林
    机器学习分类算法之逻辑回归
    机器学习分类算法之朴素贝叶斯
    机器学习分类算法之K近邻(K-Nearest Neighbor)
    机器学习之特征工程
    uwsgi支持http长链接
    机器学习之数据预处理
    机器学习之场景解析
    机器学习之基本概念
  • 原文地址:https://www.cnblogs.com/kikyoqiang/p/13039385.html
Copyright © 2011-2022 走看看