ssm图片上传
前端是一个简单的from,file name=“file_adimg”,这个图片的名称要与后台的对应
<form action="${ctx }/ad/added" method="post" enctype="multipart/form-data">
活动图片 <input type="file" name="file_adimg" class="border"
required="required" accept="image/*">
</form>
后台controller
/**
* @author jf3q.com
*
*/
@Controller
@RequestMapping("/admin/ad")
public class AdminAdController {
@Resource
private AdService adService;
@RequestMapping("added")
public String added(Ad ad,@RequestParam(value = "file_adimg",required = true) MultipartFile file,HttpServletRequest request,Model m){
String adimg=UploadFile.upimg(file, request,"ad");
ad.setAdimg(adimg);
return "";
}
}
新建图片的文件夹
上传图片的工具类UploadFile可以直接使用
/**
* @author jf3q.com
*
*/
public class UploadFile {
public static String upimg( MultipartFile file,HttpServletRequest request,String package1) {
String format=file.getContentType().split("/")[1];
String path = request.getSession().getServletContext().getRealPath("/upimgs"+package1);
String fileName = UUID.randomUUID().toString().replace("-", "").substring(1, 11)+"."+format;
File targetFile = new File(path, fileName);
if(!targetFile.exists()){
targetFile.mkdirs();
}
try {
file.transferTo(targetFile);
} catch (Exception e) {
e.printStackTrace();
}
return "/upimgs"+package1+fileName ;//返回相对路径
}
public static void deleteFile(HttpServletRequest request,String path){
String abPath= request.getRealPath("")+path;
File f=new File(abPath);
if(f.exists())f.delete();
}
}
测试是否可以上传图片
已将上传到磁盘了