/**
* 上传照片
* @param req
* @param resp
* @param product
*/
private void upload(HttpServletRequest req, HttpServletResponse resp,Product product){
/**
* 设置文件要保存的目录
*/
String uploadPath = req.getServletContext().getRealPath("upload");
File saveDir = new File(uploadPath);
if (!saveDir.exists()) {
saveDir.mkdirs();
}
//用来判断form的enctype是不是multipart/form-data,method是不是post。是返回true
boolean isMultipart = ServletFileUpload.isMultipartContent(req);
if (isMultipart) {
//得到文件条目的工厂
FileItemFactory fileItemFactory = new DiskFileItemFactory();
//得到处管理文件上传的ServletFileUpLoad对象
ServletFileUpload fileUpload = new ServletFileUpload(fileItemFactory);
try {
//解析req,得到页面中的每一个条目,如每一个input
List<FileItem> items = fileUpload.parseRequest(req);
//遍历每一个条目
Iterator iterator = items.iterator();
while (iterator.hasNext()) {
FileItem fileItem = (FileItem) iterator.next();
if (!fileItem.isFormField()) {//文件上传的表单域
String fileName = fileItem.getName();//得到要保存的文件名。可以对该名称进行处理
if (fileName != null && !fileName.equals("")) {
fileName = UUID.randomUUID() + fileItem.getName().substring(fileItem.getName().lastIndexOf("."));
File saveFile = new File(saveDir, fileName);
fileItem.write(saveFile);//保存到该文件
product.setPicName(fileName);
}
}
}
} catch (FileUploadException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
servlet上传文件
最新推荐文章于 2023-05-06 16:31:43 发布