写Demo利用SpringBoot上传文件时,发生了java.nio.file.NoSuchFileException。
很明显这是告知没有找到该文件异常,有点郁闷明明是上次文件为何没有找到该文件,找了半天才明白越来是指定存放文件目录的路径不对,
我是没有加绝对路径,应该是D:/data/temp/这样指定就OK了。另外网上也说由于应用启动时会在操作系统的tmp目录下生成一个tomcat文件用来
存放上传的文件(上传的文件会先转换成临时文件存放到该目录下,系统也会不定时去清理这些临时文件,下次在上传时路径和之前一样,但是因为系统
清理了没有找到,因此报错!)。发生这类问题时,首先要确定上传的文件目录是否没有问题(PS:多半是因为上传文件的目录指定有误才出现这类问题)。
也要避免系统不定时去清理这些临时文件,所以有必要去指定一下临时文件存放目录,(PS:这是SpringBoot指定上传文件临时目录的路径),我是在
application.properties(或者在yml文件中指定,不过写法不是.点了,把点换成:就可以了,注意格式和对齐)配置文件中
spring.servlet.multipart.location=D:/home/data/temp
加上了这个配置,其中后边就是要指定的路径。之后上传的文件和转换临的时文件都会保存到这个目录下!
(PS:以上就是我个人的理解,如果总结的不周到,还请指出,也欢迎大家一起讨论!)