求助!ajax上传文件后台用MultipartFile接收报空指针
//图片上传
function chageImg() {
$.ajaxFileUpload({
url : "${root}/qiniu/upload",//用于文件上传的服务器端请求地址
secureuri : false,//一般设置为false
fileElementId : "uploadImg",//文件上传空间的id属性 <input type="file" id="pic" name="pic" />
dataType : 'json',//返回值类型 一般设置为json
success : function(data, status){//服务器成功响应处理函数
alert(data.resultString);//文件上传的路径 url
document.getElementById("lbimg").src=data.resultString;
$("#logo").val(data.resultString);
},
error: function (data, status, e){//服务器响应失败处理函数
alert(status);
alert(e);
}
});
}
<div class="col-sm-9">
<input type="file" name="pic" id="uploadImg" style="display: none;" onchange="chageImg();">
<img id="lbimg" class="uploadImg" src="${img }/webuploader.png" onclick="uploadImg.click();" />
<span class="help-block m-b-none">尺寸为:80*80像素,jpg/png格式</span>
<div><font color="red" id="erro"></font></div>
<input type="hidden" id="logo" name="logo"/>
</div>
@Controller
public class UploadController {
@RequestMapping("qiniu/upload")
@ResponseBody
public Result upFile(MultipartFile file, HttpServletRequest request) {
//获取图片上传的名称,比如car.jpg
System.out.println("++++++++++++++++++++++++++++++"+file);
String orinalName = file.getOriginalFilename();
//获取图片上传的扩展名.jpg
String suffixName = orinalName.substring(orinalName.indexOf("."));
Result rs = new Result();
//文件为空响应为:上传图片为空
if (file.isEmpty()) {
rs.setCode(500);
rs.setResultBoolean(false);
rs.setResultMessage("上传图片为空");
return rs;
}
try {
byte[] bytes = file.getBytes();
//使用uuid替代原来的名称,避免上传的文件同名时无法区分sdgdfg-fgdfgdf-gfhf.jpg
String imageName = UUID.randomUUID().toString()+suffixName;
//使用七牛工具类上传图片
QiniuCloudUtil qiniuUtil = new QiniuCloudUtil();
//使用base64方式上传到七牛云
String url = qiniuUtil.put64image(bytes, imageName);
url = url.split(".com")[0] + ".com/" + url.split(".com")[1];
rs.setCode(200);
rs.setResultBoolean(true);
rs.setResultMessage("上传图片成功");
//上传成功返回七牛云云服务器上图片的url地址,并且将该地址保存到customer表中
rs.setResultString("http://"+url);
return rs;
} catch (Exception e) {
rs.setResultBoolean(false);
rs.setCode(500);
rs.setResultMessage("上传图片异常");
return rs;
}
}
}