JavaWeb建立的文件夾默認在tomcat/bin中

  系統項目中須要設置緩存目錄,本來項目中的目錄設置爲D:/cache目錄,這怎麼成?因而手動改爲了cache目錄,本來想使用了相對路徑,web項目可以把緩存路徑設置到tomcat的webapp的具體項目中,誰知道項目啓動後在web項目目錄中根本找不到這個目錄,什麼緣由?java

  原來這是java讀取文件機制的問題,若是直接這樣寫路徑new File("a.***"),那麼tomcat就會從程序啓動的地方去建立這個文件(Java項目中也是如此),那麼web應用是從有tomcat來執行的,tomcat這個程序是從哪裏啓動文件是startup.bat,位置是tomcat/bin。web

  咱們前面說了,普通java項目也是如此,從程序啓動的地方建立文件,那麼文件路徑不會是JDK中bin路徑吧?不是這樣的,看實驗結果:緩存

1 package io.guangsoft.file; 2 import java.io.File; 3 public class CreateFile { 4 public static void main(String args[]) { 5 File file = new File("location.txt"); 6  System.out.println(file.getAbsolutePath()); 7  } 8 }

  實驗結果代表,默認的文件路徑是eclipse項目路徑,由於咱們的項目從main函數啓動,而main函數在eclipse項目中,同理web項目的啓動入口main函數在tomcat的bin中的某個jar包。而jdk提供的僅是java運行程序不是真正的程序啓動路徑。tomcat

相關文章
相關標籤/搜索