首页 > 编程语言 > 详细

2020.06.06 SpringMVC中传统文件上传方式

时间:2020-06-07 00:17:07      阅读:39      评论:0      收藏:0      [点我收藏+]
package com.aojie.controller;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.util.List;
import java.util.UUID;

/**
* @author aojie
* @Function
* @create 2020-06-06 22:43
*/
@Controller
@RequestMapping("/user")
public class UserController {
@RequestMapping("/fileupload")
public String fileupload1(HttpServletRequest request) throws Exception {
System.out.println("文件上传!");
//使用fileupload组件完成文件上传
//指定上传位置
String path = request.getSession().getServletContext().getRealPath("/uploads");
//判断该路径是否存在
File file = new File(path);
if (!file.exists()){
file.mkdir();
}
System.out.println(path);
//解析request对象,获取上传文件
DiskFileItemFactory factory=new DiskFileItemFactory();
ServletFileUpload upload=new ServletFileUpload(factory);
//解析request
List<FileItem> list = upload.parseRequest(request);
//遍历
for (FileItem fileItem : list) {
//判断当前item对象是否是上传文件项
if (fileItem.isFormField()) {
//是普通表单项

}else {
//是上传文件项
String name = fileItem.getName();
//把文件名称设置成唯一值
String uuid = UUID.randomUUID().toString().replace("-", "");
name=uuid+"_"+name;
//完成文件上传
fileItem.write(new File(path,name));
//删除临时文件
fileItem.delete();
}

}
return "success";
}

}

2020.06.06 SpringMVC中传统文件上传方式

原文:https://www.cnblogs.com/aojie/p/13057624.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!