new File("c://tmp//imooc",name) 这个地方c:/tmp/imooc 能不能用相对路径啊? 我用request.getContextPath()+"upload" 不行啊 老师 看到了 回答一下 号码?
经过测试以下三种写法效果一致(我的eclipse和tomcat都在C盘, tomcat访问项目名为demo),(1)new File("C:\\demo\\pic\\", "123.jpg")
, (2)new File("\\demo\\pic\\", "123.jpg") ,(3)new File(request.getContextPath() + "\\pic\\", "123.jpg")
我试了一下,以上三种写法均在我的C盘创建了demo/pic目录,并且图片以名称123.jpg正确存储到其中。
当然如果在前面加一个点:new File(".\\demo\\pic\\", "123.jpg") , 我测试发现该文件夹被创建在eclipse的安装目录。。。。。也就是当前容器运行的目录,因为tomcat是在eclipse中启动的;若单独用tomcat安装目录下的bin目录里面的startup.bat启动,再次测试,你会发现创建的目录再bin目录里面,即bin/demo/pic/123.jpg