今天遇到一个错误,使用spring上传失败,找不到临时文件

错误如下:

java.io.FileNotFoundException: F:\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\HDFSWEB\upload_bb75deb0_8915_42db_8dd0_ea16edd74233_00000000.tmp (系统找不到指定的文件。)
	java.io.FileInputStream.open0(Native Method)
	java.io.FileInputStream.open(Unknown Source)
	java.io.FileInputStream.(Unknown Source)
	com.company.serviceImpl.hdfsServiceImpl.createFile(hdfsServiceImpl.java:100)
	com.company.controller.hdfsController.upLoad(hdfsController.java:92)
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	java.lang.reflect.Method.invoke(Unknown Source)
	org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:175)
	org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:446)
	org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:434)
	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:943)
	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:877)
	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966)
	org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:868)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
  

      最开始认为找不到指定文件是代码出错,后面测试后发现不是这个错误,然后在不经意的时候上传了一个大于3MB的文件,发现成功。

  于是找到错误原因,是spring配置文件出错。  

            class="org.springframework.web.multipart.commons.CommonsMultipartResolver">    
         
           
         
           
         
           
   
  

    这里的maxInMemorySIze 是文件上传的时候写到内存中的最大值,默认是10240字节,如果这里写大了,那么小于这个参数的文件则不会创建临时文件。

  最后改成了  后正常    

你可能感兴趣的:(今天遇到一个错误,使用spring上传失败,找不到临时文件)