我花了很多时间来了解spring-boot中多部分文件上传的内部工作。无法获得清晰的图像。
对spring-boottmp
目录的作用有点困惑。我有一个名为/tmp/tomcat.4296537502689403143.8587/work/Tomcat/localhost/ROOT]
的tmp目录
在文件上传过程中,我检查了tmp
目录,无法在此处写入任何内容。如果我删除文件夹,它将抛出多部分错误。
有人能解释一下文件上传的内部工作原理和tmp
目录的作用吗。
Spring启动web框架附带嵌入式web服务器:默认情况下为Tomcat。Tomcat创建/使用tmp目录来存储临时文件;包括上传的文件、会话文件和其他文件。
该行为可以通过配置进行更改。或者,您也可以将spring-boot配置为使用不同的web服务器。
https://github.com/spring-projects/spring-boot/blob/70eee612ff2a2b1e58cbcb18a4d46e464895c18a/spring-boot/src/main/java/org/springframework/boot/context/embedded/tomcat/TomcatEmbeddedServletContainerFactory.java