67,513
社区成员
发帖
与我相关
我的任务
分享
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="utf-8" />
<property name="maxUploadSize" value="10485760000" />
<property name="maxInMemorySize" value="40960" />
</bean>
<form enctype="multipart/form-data" method="post" action="adinfo/saveAdInfo?editType=${editType}&resKey=adInformation" class="pageForm required-validate">
<input name="adImage" type="file" />
</form>
@RequestMapping(value = "/saveAdInfo", method = RequestMethod.POST)
public void saveAdInfo(HttpServletRequest request,HttpServletResponse response,AdInfo ai,
String editType,String resKey) throws IllegalStateException, IOException{
//将当前上下文初始化给 CommonsMutipartResolver (多部分解析器)
CommonsMultipartResolver multipartResolver=new CommonsMultipartResolver( request.getSession().getServletContext());
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) {
String path="F:\\pic\\test"+file.getOriginalFilename();
//上传
file.transferTo(new File(path));
}
}
}
ajaxObj = adInfoService.saveAdInfo(resKey,editType,ai);
jsonResult = JSONObject.toJSONString(ajaxObj);
StringHelper.outputJsonString(jsonResult, response);
}
MultipartHttpServletRequest multiRequest=(MultipartHttpServletRequest)request;
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
@RequestMapping(value = "/saveAdInfo", method = RequestMethod.POST)
public void saveAdInfo(HttpServletRequest request,HttpServletResponse response,AdInfo ai,
String editType,String resKey,@RequestParam("adImage") MultipartFile adImage) throws IllegalStateException, IOException{
String fileName = adImage.getOriginalFilename();
String[] ymd = StringHelper.getYMD().split("-");
String path=request.getSession().getServletContext().getRealPath("");
String imgPath = "/upload/" + ymd[0] + "/" + ymd[1] + "/" + ymd[2];
ai.setAdImagePath(imgPath + "/" + fileName);
File targetDir = new File(path + imgPath);
if (!targetDir.exists()) {
targetDir.mkdirs();
}
logger.info("广告图保存至目录:" + targetDir);
try {
// 保存
adImage.transferTo( new File(targetDir +"/" + fileName));
// FileOutputStream out = new FileOutputStream(targetDir + "/" + fileName);
// out.write(adImage.getBytes());
// out.flush();
// out.close();
} catch (Exception e) {
e.printStackTrace();
}
String url = request.getParameter("url");
String appName = request.getParameter("appName");
AdBehaviorTodo abt = new AdBehaviorTodo();
abt.setUrl(url);
abt.setAppName(appName);
ajaxObj = adInfoService.saveAdInfo(resKey,editType,ai,abt);
jsonResult = JSONObject.toJSONString(ajaxObj);
StringHelper.outputJsonString(jsonResult, response);
}