您的位置:首页 > 编程语言 > Java开发

Java多文件上传相关代码

2017-09-08 13:31 375 查看
public ResultJson fileUpload(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
ResultJson resultJson = new ResultJson();
CommonsMultipartResolver multipartResolver=new CommonsMultipartResolver(request.getSession().getServletContext());
/**
* 检查form中是否有enctype="multipart/form-data"
*/
if (multipartResolver.isMultipart(request)) {
/**
* 将request变成多部分request
*/
MultipartHttpServletRequest multiRequest=(MultipartHttpServletRequest)request;
/**
* 获取multiRequest 中所有的文件名
*/
Iterator iter = multiRequest.getFileNames();
while (iter.hasNext()) {
MultipartFile file=multiRequest.getFile(iter.next().toString());
if (file!=null) {
/**
* 保存在resource/appImages路径下
*/
String path = request.getSession().getServletContext().getRealPath("/") + "/resource/appImages/";
/**
* 1.String realPath = request.getSession().getServletContext().getRealPath("/resource/appImages/") ;
* 2.String realPath = request.getSession().getServletContext().getRealPath("/") + "/resource/appImages/";
* 1和2的写法得到的结果是不一样的,前者不能进入appImages路径,只能到resource
*/
File fileItem = new File(path);
if (!fileItem.exists()) {
fileItem.mkdir();
}
String realName = path + file.getOriginalFilename();
try {
/**
* 上传文件到指定位置
*/
file.transferTo(new File(realName));
resultJson.setState(true);
imgUrl.append("resource/appImages/"+file.getOriginalFilename()+",");
/**
* flag = 0表示上传成功,1表示失败,2表示没有文件上传。为投诉新增接口判断做铺垫
*/
resultJson.setFlag("0");
resultJson.setMessage(imgUrl.toString());
} catch (Exception e) {
// TODO Auto-generated catch block
resultJson.setState(false);
/**
* 上传失败
*/
resultJson.setFlag("1");
e.printStackTrace();
}
}
}
} else {
resultJson.setState(false);
/**
* 没有文件可上传
*/
resultJson.setFlag("2");
}
return resultJson;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: