我为我的应用程序使用Spring Boot,并且想要将一些文件上传到我的数据库中。 我用一个教程来实现这一点,它工作正常。我的问题是,我不知道如何设置上传的最大文件大小。默认值是1MB,但这对我来说还不够。春季上传文件大小限制
我添加这些行到我application.properties:
spring.http.multipart.max文件大小= 100MB
spring.http.multipart.max请求尺寸= 100MB
但它没有帮助。
我的代码:
FileService.java
@Service
public class FileService {
@Autowired
FileRepository fileRepository;
public Response uploadFile(MultipartHttpServletRequest request) throws IOException {
Response response = new Response();
List fileList = new ArrayList();
Iterator<String> itr = request.getFileNames();
while (itr.hasNext()) {
String uploadedFile = itr.next();
MultipartFile file = request.getFile(uploadedFile);
String mimeType = file.getContentType();
String filename = file.getOriginalFilename();
byte[] bytes = file.getBytes();
File newFile = new File(filename, bytes, mimeType);
File savedFile = fileRepository.saveAndFlush(newFile);
savedFile.setFile(null);
fileList.add(savedFile);
}
response.setReport(fileList);
return response;
}
}
FileController.java
@RestController
@RequestMapping("/file")
public class FileController {
@Autowired
FileService fileService;
@RequestMapping(value = "/upload", method = RequestMethod.POST)
public Response uploadFile(MultipartHttpServletRequest request) throws IOException{
return fileService.uploadFile(request);
}
}
这段代码就好了,它完美的作品,我做不到设置最大文件大小。
在此先感谢。
性能看起来不错,当你尝试,能得到任何错误更大的文件? –
MultipartException 无法解析多部分servlet请求;嵌套异常是java.lang.IllegalStateException:org.apache.tomcat.util.http.fileupload.FileUploadBase $ FileSizeLimitExceededException:字段上传文件超过了其允许的最大大小1048576字节。 – Siriann
您使用哪种弹簧启动版本。 –