zoukankan      html  css  js  c++  java
  • SpringMVC Ueditor1.4.3 未找到上传数据

    ueditor自事的fileupload组件与spring的有冲突。将那个类BinaryUploader 重写就可以了

                return storageState;
            } catch (FileUploadException e) {
                return new BaseState(false, AppInfo.PARSE_REQUEST_ERROR);
            } catch (IOException e) {
            }
            return new BaseState(false, AppInfo.IO_ERROR);
        }*/
        
        public static final State save(HttpServletRequest request,
                Map<String, Object> conf) {

            try {
                MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
                MultipartFile multipartFile = multipartRequest.getFile(conf.get("fieldName").toString());

                String savePath = (String) conf.get("savePath");
                String originFileName = multipartFile.getOriginalFilename();
                String suffix = FileType.getSuffixByFilename(originFileName);

                originFileName = originFileName.substring(0,originFileName.length() - suffix.length());
                savePath = savePath + suffix;

                long maxSize = ((Long) conf.get("maxSize")).longValue();

                if (!validType(suffix, (String[]) conf.get("allowFiles"))) {
                    return new BaseState(false, AppInfo.NOT_ALLOW_FILE_TYPE);
                }
                /***********/
                //自定义
                savePath = PathFormat.parse(savePath, originFileName);
               
                String [] savePathBySplit_temp = savePath.split("/");
                String temp = "";
                String fileName = savePathBySplit_temp[savePathBySplit_temp.length-1];
                for(int i = 2;i < savePathBySplit_temp.length-1; i++){
                    if(i!=savePathBySplit_temp.length-2){
                        temp+=savePathBySplit_temp[i]+"/";
                    }else{
                        temp+=savePathBySplit_temp[i];
                    }
                }
                String pathTemp = request.getSession().getServletContext().getRealPath(temp);
                System.out.println(pathTemp+","+fileName);
                System.out.println(new File(pathTemp).exists());
                File targetFile = new File(pathTemp);
                if(!targetFile.exists()){  
                    targetFile.mkdirs();  
                }
                System.out.println(new File(pathTemp).exists());
                /************/
                //State storageState = StorageManager.saveFileByInputStream(multipartFile.getInputStream(),savePath, maxSize);
                State storageState = StorageManager.saveFileByInputStream(multipartFile.getInputStream(),pathTemp+"/"+fileName, maxSize);

                if (storageState.isSuccess()) {
                    storageState.putInfo("url", PathFormat.format(savePath));
                    storageState.putInfo("type", suffix);
                    storageState.putInfo("original", originFileName + suffix);
                }

                return storageState;

            }catch (Exception e) {
                e.printStackTrace();
                System.out.println(e.getMessage());
            }
            return new BaseState(false, AppInfo.IO_ERROR);
        }
  • 相关阅读:
    mysql主从之过滤复制
    mysql主从之主从延时监控及原因分析
    mysql误删搭建有主从的主库master binlog处理
    mysql 主从复制原理,概念,故障的检控/分析/处理
    mysql之主从复制搭建
    mysql表的物理存储结构及逻辑结构
    sql语句执行过程及mysql权限管理
    linux安装mysql5.7.30 及配置多实例
    mysql备份恢复之xtrabackup (XBK、Xbackup)
    mysql 备份之逻辑备份mysqldump, mysqlbinlog, 全备及参数说明
  • 原文地址:https://www.cnblogs.com/vincent4code/p/5809858.html
Copyright © 2011-2022 走看看