springboot单文件上传和多文件上传

1、设置文件上传大小的限制:

yml配置文件设置:

1
2
3
4
5
yaml复制代码spring:
servlet:
multipart:
max-file-size: 10MB
max-request-size: 100MB

2、前端页面:

3、control层

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
less复制代码package com.jf3q.study.control;

import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.io.IOException;

@Controller
@Slf4j
public class RegControl {

@GetMapping("/toreg")
public String toreg(){
return "register";
}


/**
*
* 平时遇到自己解决不了的bug问题可以来编程问答平台悬赏问答,
* 解决不了不要钱,地址:https://www.jf3q.com/
* @param username
* @param password
* @param faceImg
* @param lifeimg
* @return
*/
@PostMapping("/reg")
public String reg( @RequestParam("username") String username,
@RequestParam("username") String password,
@RequestParam("faceImg") MultipartFile faceImg,
@RequestParam("lifeimg") MultipartFile[] lifeimg ) throws IOException {

log.info("username:{},password:{},faceImg:{},lifeimg:{}",username,password,faceImg.getSize(),lifeimg.length);

if(!faceImg.isEmpty()){
String originalFilename = faceImg.getOriginalFilename();//获取上传文件的名字
faceImg.transferTo(new File("E:\\upload\\"+originalFilename));
}
if(lifeimg.length > 0){
for(MultipartFile img :lifeimg){
if(!img.isEmpty()){
String originalFilename = img.getOriginalFilename();//获取上传文件的名字
img.transferTo(new File("E:\\upload\\"+originalFilename));
}

}
}


return "login";
}
}

4、如果有拦截器的话,拦截器设置下放行

1
2
3
4
5
6
typescript复制代码@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new LoginInterceptor())
.addPathPatterns("/**") //所有请求都被拦截,包括静态资源
.excludePathPatterns("/","/login","/toreg","/reg","/img/**","/js/**","/css/**","/favicon.ico");//设置不拦截的路径
}

5、效果如下:

有什么不懂得可以q我1913284695

本文转载自: 掘金

开发者博客 – 和开发相关的 这里全都有

0%