前段页面:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <!DOCTYPE html > <html> <head>     <title>个人信息</title>     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />     <meta content="width=device-width; initial-scale=1.0; minimum-scale=1.0; maximum-scale=1.0;user-scalable=no" name="viewport">     <meta content="640" name="MobileOptimized">     <meta content="YES" name="apple-touch-fullscreen">     <meta content="yes" name="apple-mobile-web-app-capable">     <link href="${ROOT_PATH }content/css/staff/employee.css" type="text/css" rel="stylesheet"/>     <link href="${ROOT_PATH }content/css/staff/font-awesome.min.css" type="text/css" rel="stylesheet"/>        <script src="${ROOT_PATH }content/scripts/jquery-1.10.1.min.js"></script>        <script src="${ROOT_PATH }content/scripts/jquery.form.js"></script>        <script src="${ROOT_PATH }content/scripts/staff/staff.js"></script> </head> <body>     <form action="${ROOT_PATH }Staff/index/upload" name="stafform" id="stafform" method="post">         <c:set var="head" value="${ROOT_PATH }content/images/staff/photo.png"/>         <c:if test="${!empty staff.imageurl.value }">             <c:set var="head" value="${staff.imageurl.value }"/>             </c:if>         <c:set var="headx" value="${ROOT_PATH }content/images/staff/img1.jpg"/>         <c:if test="${!empty staff.imageurlb.value }">             <c:set var="headx" value="${staff.imageurlb.value }"/>             </c:if>         <div class="avatar"><a class="photo" href="#"><img id="imghead" src="${head}"/><input id="imagev" name="image" onchange="previewImage(this)" type="file" class="photo_put" value="" /></a><input type="text" name="hm" value="${staff.staffename.value}"/></div>         <div class="per_infor_box">             <ul class="per_infor">                 <li><label>门 店</label><input type="text" value="${staff.commpanyName.value}" disabled="disabled" /></li>                 <li><label>职 位</label><input type="text" value="${staff.position.value }" disabled="disabled"/></li>                 <li><label>姓 名</label><input type="text" value="${staff.staffname.value }" disabled="disabled"/></li>                 <li><label>手 机</label><input type="text" value="${staff.mobilephone.value }" disabled="disabled"/></li>                 <li><label>工 龄</label><input type="text" value="${staff.workTime.value }" disabled="disabled"/></li>                 <li><label>身份证</label><input type="text" value="${staff.pccid.value }" disabled="disabled"/></li>                 <li><label>自我介绍</label><textarea disabled="disabled">${staff.description.value }</textarea></li>             </ul>         </div>         <div class="bottom infor_bot">                    <input class="present" type="submit" value="提 交"/>         </div>     </form> </body>  <script type="text/javascript">     $(function () {         $('#stafform').submit(function () {             var options = {                 dataType: 'json',                 success: function (txt) {                     if (txt.isok) {                         alert("保存成功");                         location.reload(true);                         return false;                     } else {                         alert(txt.data);                         return false;                     }                 }             };             $('#stafform').ajaxSubmit(options);             return false;         });     }); </script> </html>


后台代码:


package amani.wechat.platform.controller;  import java.io.IOException; import java.util.Date; import java.util.List; import java.util.Map;  import javax.annotation.Resource; import javax.servlet.http.HttpSession; import javax.xml.bind.JAXBElement;  import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.multipart.MultipartFile;  import amani.wechat.platform.controller.model.Result; import amani.wechat.platform.services.ICommonService; import amani.wechat.platform.utils.CompressPic; import amani.wechat.platform.webserviceClient.StaffHairDesignerInfo; import amani.wechat.platform.webserviceClient.Staffinfo; import amani.wechat.platform.webserviceClient.imageService.ImageCloudService; import amani.wechat.platform.webserviceClient.imageService.ImageCloudServicePortType;  import com.google.gson.Gson; import com.google.gson.reflect.TypeToken;  @Controller @RequestMapping("/Staff") public class StaffController {          @Resource(name="CommonService")     ICommonService commonService ;          static ImageCloudServicePortType aImageCloudServicePortType;          static{         ImageCloudService  aImageCloudService = new ImageCloudService();         aImageCloudServicePortType = aImageCloudService.getImageCloudServiceHttpPort();     }    /**      * 更新头像和昵称      * @param image      * @param hm      * @param session      * @return      * @throws IOException       */     @RequestMapping(value = "/index/upload", method = RequestMethod.POST)     @ResponseBody     public Result indexUpload(@RequestParam(value = "file", required = false)MultipartFile image, String hm, HttpSession session)  {         String imagePath = "";         String imagebPath = "";         Result res = new Result();         String openid = session.getAttribute("openid")+"";         res.setIsok(true);         if(image!=null){             String fileName = new Date().getTime() + "_" + image.getOriginalFilename();             String key = fileName;             try {                 byte[] img = CompressPic.compressPic(image.getInputStream(), 300, 300);                 imagePath = aImageCloudServicePortType.uploadFile(img, "amani", key);                 Gson gson = new Gson();                 Map<String, String> map = gson.fromJson(imagePath, new TypeToken<Map<String, String>>(){}.getType());                 imagePath = map.get("url");             } catch (Exception e) {                 e.printStackTrace();             }          }         commonService.updateStaffInfo(openid, hm, imagePath, imagebPath);                  return res;     }  }


改成

@RequestParam(value = "file",就ok了