用log4j解決java相對路徑問題

2021-04-12 14:12:51 字數 861 閱讀 7324

普通的j2se程式中定位當前程式執行目錄很簡單,system.getproperty("user.dir");即可,但在web應用中,這種方法則不行,定位當前程式的執行路徑則比較麻煩。在網上搜尋了n多資料,都沒能有很方便的解決辦法。

忽然考慮到log4j無論在j2se程式下還是在j2ee web程式下,都可以定位log4j.properties檔案,甚是驚奇。經一番尋跡,發現是通過 url org.apache.log4j.loader.getresource(string s);方法可以定位log4j.properties的。

後面就不需要多說了吧。有興趣的話可以看log4j的原始碼。

下面是一段簡單的例子。把log4j.jar加入到lib裡,一般的應用都會加這個包的。

//將 test.txt 放在web-inf/classes中

url url = org.apache.log4j.loader.getresource("test.txt");

bufferedreader reader = new bufferedreader(new inputstreamreader(url.openstream()));

system.out.prinln(reader.readline());

//如果要訪問web-inf下的檔案,只需要在前面加上 "../"就可以了

url url = org.apache.log4j.loader.getresource("../test.txt");

bufferedreader reader = new bufferedreader(new inputstreamreader(url.openstream()));

system.out.prinln(reader.readline());

java中Log4j的使用

當我們的 存在有疑問的地方且不想去處理時,我們就需要把程式的日誌資訊輸出,這時我們會用到一個 下一步是需要一個屬性檔案,其中配置日誌的記錄位置,記錄格式等內容,我所用到的配置檔案如下,從中可以看出,我把日誌檔案輸出到控制檯上 log4j.rootlogger debug,stdout pattern...

java 中如何配置log4j

log4j.rootlogger info,console,info,error 第一個info 表示日誌的輸出級別 後三個console info error 表示日誌的輸出地,可以同時向多個地址輸出 第二個info表示輸出地 配置日誌資訊的格式 佈局 layout 其中,log4j提供的layo...

Java後臺log4j如何配置

log4j是目前比較流行的後臺日誌記錄工具,下面我們來看一下log4j如何配置吧。首先需要新建名字為log4j的properties空白屬性檔案。然後配置以下資訊 log4j.rootlogger debug,stdout 其中,log4j.rootlogger debug,stdout,指的是日誌...

tomcat用log4j打日誌設定

示例 首先建立一個 log4j.proerties檔案,檔案配置如下 html view plain copy print?log4j.rootlogger info,a1 日誌檔案會輸出到tomcat資料夾下的logs檔案下localhost xx.log檔案。用.catalina.sh run ...

log4j檔案使用 java日誌配置

第一步引入log4j的jar包 在source folder中新建log4j.properties檔案並且撰寫。工程中載入log4j檔案 第一種解決 mybatis配置檔案中配置 第二種解決 web.xml中 log4jconfiglocation classpath log4j.propertie...