多文件上传multiparthttpservletrequest后台接收多张图片

前台代码: 

            $("#fm").form("submit", {
                url: url,
                onSubmit: function () {
                    return $(this).form("validate");
                },
                success: function (result) {
                    $.messager.alert("系统提示", "保存成功");
                    resetValue();
                    $("#dlg").dialog("close");
                    $("#dg").datagrid("reload");
                }
            });

 <form id="fm"  method="post" enctype="multipart/form-data">
        <table cellspacing="8px">
            <tr>
                <td>商品名称:</td>
                <td><input type="text" id="goodsName" name="goodsName"
                           class="easyui-validatebox" required="true"/>&nbsp;<font
                        color="red">*</font>
                </td>
             
              <tr>
               <td>选择图片:</td>
               <td>
                <input id="goodsPicture" name="goodsPicture" type="file" />
                </td>
            </tr>
                          <tr>
               <td>选择图片:</td>
               <td>
                <input id="goodsPicture1" name="goodsPicture1" type="file"/>
                </td>
            </tr>
        
        </table>
    </form>

后台代码:

 CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext());

   //获取前台提交图片  
         if (multipartResolver.isMultipart(request)){  
             MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;  
              String filepath = "D:/test";
             Map<String, MultipartFile> fileMap = multiRequest.getFileMap();
             String fileName = null;
             for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
                 // 获取单个文件
                 MultipartFile mf = entity.getValue(); // 获得原始文件名
                 fileName = mf.getOriginalFilename(); // 截取文件类型; 这里可以根据文件类型进行判断
                 String fileType = fileName.substring(fileName.lastIndexOf('.'));
                 try {
                     // 截取上传的文件名称
                     String newFileName = fileName.substring(0, fileName.lastIndexOf('.'));
                     //图片转换成io,存到数据库
                     byte[] image = mf.getBytes();
                     // 拼接上传文件位置
                     goods.setImage(image);
                     goods.setImageName(newFileName);
                     goods.setImageType(fileType);
                    
                    
                    //保存到服务器
                     String newfilePath = filepath + File.separatorChar + newFileName + fileType;
                     System.out.println("拼接好的文件路径地址------------->>>>>>>>" + newfilePath);
                     // 重新组装文件路径,用于保存在list集合中
                     File dest = new File(filepath);
                     // 判断文件夹不存在就创建
                     if (!dest.exists()) {
                         dest.mkdirs();
                         }
                     // 创建文件实例
                     File uploadFile = new File(newfilePath);
                     // 判断文件已经存在,则删除该文件
                     if (uploadFile.exists()) {
                         uploadFile.delete();
                         }
                     } catch (Exception e) {
                         e.printStackTrace();
                 }
             }  
         }

猜你喜欢

转载自blog.csdn.net/weixin_42071232/article/details/84825595