阅读背景:

从HttpServletRequest 中获取文件流转换为MultipartFile_man_18483633325的博客_httpservletrequest获取multipartfile

来源:互联网 

上传的接口:

    @ApiOperation("文件上传")
    @RequestMapping("/upload")
    @ResponseBody
    public RtnInfo uploadFile(HttpServletRequest request, FormatData formData) throws IOException{
        RtnInfo rtnInfo = new RtnInfo();
        CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext());
        commonsMultipartResolver.setDefaultEncoding("utf-8");
        List<Map<String,String>> pathList = new ArrayList<Map<String,String>>();
        try {
            if (commonsMultipartResolver.isMultipart(request)){
                MultipartHttpServletRequest mulReq = (MultipartHttpServletRequest) request;
                Map<String, MultipartFile> map = mulReq.getFileMap();
                String folder = "";
                // key为前端的name属性,value为上传的对象(MultipartFile)
                for (Map.Entry<String, MultipartFile> entry : map.entrySet()) {
                    //获取folder,这里folder与前端name属性对应,定义为图片的归属
                    folder=AliyunUtils.getFolder(entry.getKey());
                    //只执行一次获取到folder
                    break;
                }
                List<MultipartFile> valueList = new ArrayList<MultipartFile>(map.values());
                if(folder!=""&&!valueList.isEmpty()){
                    //将map中的MultipartFile存进数组中
                    MultipartFile[] files = new MultipartFile[valueList.size()];
                    valueList.toArray(files);
                    //上传图片文件并获取到路径集合pathList
                    pathList = AliyunUtils.uploadImages(files, folder);
                }
            }
            rtnInfo.setData(pathList);
            rtnInfo.setSystemCode(SystemCode.SUCCESS);
        } catch (IOException e) {
            rtnInfo.setSystemCode(SystemCode.ERROR_6);
            rtnInfo.setMsg(e.getMessage());
            logger.error("Exception:{}",e);
        }
        return rtnInfo;
    }    @ApiOperation("文件上传")
    @Request



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: