休息食客

          隨心而動

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            16 隨筆 :: 7 文章 :: 2 評論 :: 0 Trackbacks
          Java獲取根目錄路徑有很多種方法,但是根據應用程序所部署的環境和中間件不同,獲取的路徑可能也不同。下面我提供一種方法,解決這個問題。

                   String path = InterfaceConfig.class.getResource("").getPath().toString();//獲取類所在路徑
                   if (path.contains(".jar")) {
                       path = path.replace("/", File.separator);//將/換成\,如果是linux環境,還是/
                       path = path.replace("file:", "");//去掉file
                       path = path.replace("classes\\", "");//去掉classes\
                       if (path.startsWith("\\")) {
                           path = path.substring(1);//去掉第一個\,如:、\D:\TongWeb...  ,在linux上沒有這種情況
                       }
                       path = path.split("WEB-INF")[0]+"WEB-INF"+File.separator+"classes";
                  } else {
                       path = InterfaceConfig.class.getResource("/").getPath().toString();//獲取根路徑
                  }
                  File file = new File(path + File.separator + "InterfaceConfig.xml");

          這段代碼什么意思呢?
          1、第一行是獲取InterfaceConfig.class這個類所在的路徑,這個InterfaceConfig.class可以換成你這段代碼所在的類。
          2、判斷路徑中是否包含.jar,就是說這段代碼所在的類最終構建的時候是不是打入jar包里,如果在jar包里,就去掉一些內容,如file: ,classes\\,
              然后根據WEB-INF切割,并拼出根目錄。
          3、如果沒有打入jar包,那更簡單了,直接通過獲取根路徑方法就解決了。
          4、最后讀取classes路徑下的InterfaceConfig.xml配置文件。

          posted on 2015-01-30 15:01 休息食客 閱讀(1332) 評論(1)  編輯  收藏 所屬分類: java

          評論

          # re: Java獲取根目錄,讀取配置文件 2015-01-31 18:03 京山游俠
          mark。  回復  更多評論
            

          主站蜘蛛池模板: 江源县| 井陉县| 广昌县| 余庆县| 祥云县| 清流县| 南澳县| 罗城| 大渡口区| 梁山县| 仙游县| 涡阳县| 金山区| 磴口县| 惠安县| 嘉善县| 江城| 琼海市| 盐津县| 饶平县| 徐闻县| 阿巴嘎旗| 乌兰县| 衢州市| 合作市| 余姚市| 盈江县| 抚宁县| 三穗县| 沧州市| 宁远县| 加查县| 屏东县| 仪征市| 湘乡市| 台前县| 册亨县| 镇平县| 石首市| 远安县| 海门市|