一、在Sping MVC框架下的图片上传:
controller.java代码:
/**
* @Description 多个文件上传文件解析处理并存储
*/
@RequestMapping(value = "/savePictureinfo", method = RequestMethod.POST)
public Object savePictureinfo(PictureInfo pictureInfo,
HttpServletRequest request, HttpServletResponse response,
@RequestParam(value = "file") MultipartFile[] files,
@RequestParam("towerType") String towerType,
HttpSession session) {
Date date = new Date();
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String path = Const.readProperties("fileUploadPath");
for (MultipartFile file : files) {
filename = file.getOriginalFilename();
String a[] = { "~", "!", "@", "#", "$", "%", "&", "=", "," };
for (String i : a) {
filename = filename.replaceAll(i, "");
}
System.out.println("资料名称:" + filename);
File targetFile = new File(path, filename);
if (!targetFile.exists()) {
targetFile.mkdirs();
}
try {
file.transferTo(targetFile);
file.getInputStream().close();
} catch (Exception e) {
e.printStackTrace();
}
pictureInfo.setFileName(filename);
pictureInfo.setTowerType(towerType);
pictureInfo.setCreateDate(sd.format(date));
pictureInfo.setFlag("");
pictureservice.savePictureInfo(pictureInfo);
}
return "redirect:/pages/tieta/pictureList.jsp";
}
jsp代码:
<form action="<%=path%>/savePictureinfo.htm" enctype="multipart/form-data" style="align:center" method="post" id="form1" name="form1">
<P style="padding: 30px 0px 10px; position: relative;">
类型:
<select id="towerType" name="towerType" style="width: 150px;">
<option value="">全选</option>
<option value="0">00 </option>
<option value="1">11</option>
<option value="2">22 </option>
<option value="3">33</option>
<option value="4">44</option>
</select>
</P>
<P style="position: relative;">
图片上传<br/>
<input class="ipt" type="file" name="file" style="padding-top: 100px;padding-bottom: 100px;">
<input class="ipt" type="file" name="file"style="padding-top: 100px;padding-bottom: 100px;"><br/>
</P>
<P style="position: relative;">
<input type="submit" value="确定" style="width:100px;margin-top: 30px; margin-left: 260px;">
</P>
</form>
备注:红色位置必须根据不同项目配置使两者相匹配!