springboot 文件上传
来源:互联网 发布:nginx server 配置 编辑:程序博客网 时间:2024/05/01 12:06
maven比较简单,还是自己常用的那些,这里就不上传了,文件没存到项目中,存在磁盘当中
文件上传首先清理缓存在application.properties配置
spring.thymeleaf.cache=false
单个文件上传
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>文件上传</title></head><body><h1 th:inlines="text">文件上传</h1><form action="fileUpload" method="post" enctype="multipart/form-data"> <p>选择文件: <input type="file" name="fileNameOne"/></p> <p><input type="submit" value="提交"/></p></form></body></html>
访问页面
@Controller@RequestMapping("test")public class FileController { @RequestMapping("file") public String file() {return "file";}
文件上传的方法
@RequestMapping("fileUpload")@ResponseBodypublic String fileUpload(@RequestParam("fileNameOne") MultipartFile file) { if (file.isEmpty()) { return "false"; } //获取文件名称 String fileNameOne = file.getOriginalFilename(); //文件长度 int size = (int) file.getSize(); System.out.println(fileNameOne + "-->" + size); //获取文件后缀名称 String suffixName = fileNameOne.substring(fileNameOne.lastIndexOf(".")); System.out.println("后缀名为:" + suffixName); //文件上传的路径 String filePath = "d://testFile//"; //解决中文问题可以加uuid fileNameOne = UUID.randomUUID() + suffixName; File files = new File(filePath + fileNameOne); //检测目录是否存在 if (!files.getParentFile().exists()) { files.getParentFile().mkdirs(); } try { file.transferTo(files); return "上传成功"; } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return "上传失败";}
多文件上传
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>多文件上传</title></head><body><h1 th:inlines="text">文件上传</h1><form action="multifileUpload" method="post" enctype="multipart/form-data"> <p>选择文件1:<input type="file" name="fileName"></p> <p>选择文件2:<input type="file" name="fileName"></p> <p>选择文件3:<input type="file" name="fileName"></p> <p><input type="submit" value="提交"/></p></form></body></html>
访问页面
@RequestMapping("multifile")public String multifile() {return "multifile";}
多文件上传方法
@RequestMapping(value="multifileUpload",method=RequestMethod.POST)@ResponseBodypublic String multifileUpload(HttpServletRequest request){ List<MultipartFile> files = ((MultipartHttpServletRequest)request).getFiles("fileName"); if(files.isEmpty()){ return "false"; } String path = "d://testFile//" ; for(MultipartFile file:files){ String fileName = file.getOriginalFilename(); System.out.println(fileName); String suffixName = fileName.substring(fileName.lastIndexOf(".")); fileName = UUID.randomUUID() + suffixName; if(file.isEmpty()){ return "false"; }else{ File dest = new File(path + "/" + fileName); if(!dest.getParentFile().exists()){ //判断文件父目录是否存在 dest.getParentFile().mkdir(); } try { file.transferTo(dest); }catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); return "上传失败"; } } } return "上传成功";}
多文件上传可能遇到文件过大问题springboot默认上传大小为2M,我们可以做以下配置:
第一种(这种方法解决不了多文件上传的实质问题)
#多文件上传限制图片大小# Single file max sizemultipart.maxFileSize=60Mb# All files max sizemultipart.maxRequestSize=60Mb
第二种在启动类App.class文件中配置Bean来设置文件大小
@SpringBootApplication@Configurationpublic class KuaidiApplication { public static void main(String[] args) { SpringApplication.run(KuaidiApplication.class, args); } @Bean public MultipartConfigElement multipartConfigElement(){ MultipartConfigFactory factory = new MultipartConfigFactory(); factory.setMaxFileSize("10240KB"); factory.setMaxRequestSize("102400KB"); return factory.createMultipartConfig(); }}
阅读全文
0 0
- SpringBoot文件上传
- springboot文件上传
- SpringBoot上传文件
- springboot 文件上传
- SpringBoot之文件上传
- springboot 文件上传
- SpringBoot实现文件上传
- springboot 上传文件
- Springboot 文件上传
- SpringBoot上传文件
- SpringBoot文件上传控制
- springboot上传文件
- springboot+文件上传和下载
- springboot实现多文件上传
- springboot 文件上传大小配置
- SpringBoot轻松实现文件上传
- 15.springboot实现文件上传
- SpringBoot文件上传和下载
- 利用SynthText生成自然场景文本检测数据集
- 【资源】深度学习 Top100:近 5 年被引用次数最高论文(下载)
- Mysql Mac 免安装教程
- java移位运算符详解
- Java使用JDBC连接数据库(一)
- springboot 文件上传
- IP地址分类
- linux 磁盘管理四部曲——(1)磁盘结构,认识分区
- IO多路复用
- Python中raw_input() 与 input() 的异同
- MAC地址表(交换机)、ARP缓存表以及路由表(路由器)
- ALV 后台输出时,增加spool假脱机的宽度
- Docker的Ubuntu镜像安装的容器无ifconfig命令和ping命令
- 2017年8月23日09:33:56