最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決logback的日志文件路徑問(wèn)題

 更新時(shí)間:2021年02月27日 10:21:20   作者:葉_子_X  
這篇文章主要介紹了解決logback的日志文件路徑問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

假如使用絕對(duì)路徑,沒有任何問(wèn)題,就是移植性不太好。

假如使用相對(duì)路徑,則要注意當(dāng)前路徑“.”是在哪兒?

一般我們都會(huì)在配置文件中加入log文件的存儲(chǔ)目錄,如

本人通過(guò)研究測(cè)試發(fā)現(xiàn):

1.對(duì)于J2SE項(xiàng)目,當(dāng)前路徑為工程所在目錄

如我的工程為:D:\test

則使用…/logs生成的日志文件位于:D:\logs

2.對(duì)于J2EE項(xiàng)目,當(dāng)前路徑為tomcat\bin所在目錄

如我的tomcat路徑為:D:\tomcat\bin

則使用…/logs生成的日志文件位于:D:\tomcat\logs

補(bǔ)充:logback加載外部配置文件 重置logback配置文件路徑

logback加載外部配置文件 重置logback配置文件路徑

logback作為一種成熟的日志框架,已被廣泛應(yīng)用在現(xiàn)代各種java項(xiàng)目中。

以javaweb項(xiàng)目為例,使用logback.xml作為logback的配置文件時(shí),在代碼中通常是將該配置文件放在src/main/resource/下,部署時(shí)該文件會(huì)放在classpath下。

但是,有時(shí)出于各種目的,需要將logback的配置文件放在特定的目錄下,此時(shí)需要自定義logback配置文件的加載路徑。

logback自動(dòng)加載配置文件的優(yōu)先級(jí)如下:

1.classpath下的logback-test.xml

2.classpath下的logback.groovy

3.classpath下的logback.xml

4.META-INF/services/ch.qos.logback.classic.spi.Configurator中的 logback 配置實(shí)現(xiàn)類

5.logback自帶的默認(rèn)配置文件BasicConfigurator

當(dāng)需要將日志配置文件放在其他路徑下時(shí),其實(shí)就是logback重新加載配置文件的過(guò)程。

參考代碼如下:

import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.classic.joran.JoranConfigurator;
import ch.qos.logback.core.util.StatusPrinter;
import java.io.File;
public class LogTest
{
 private org.slf4j.Logger logger;
 private ch.qos.logback.classic.LoggerContext loggerContext;
 public LogTest()
 {
  logger = org.slf4j.LoggerFactory.getLogger(this.class);
  loggerContext = (LoggerContext) org.slf4j.LoggerFactory.getILoggerFactory();
  String logbackConfigPath = System.getProperty("user.dir") + "/your_logback_config/logback.xml";
  File file = new File(logbackConfigPath);
  if(!file.exists())
  {
  logger.error("logbackConfigPath file is no exist");
  }
  else 
  {
  if(!file.isFile())
  {
  logger.error("logbackConfigPath file is not a file");
  }
  else
  {
  if(!file.canRead())
  {
  logger.error("logbackConfigPath file can not read");
  }
  else
  {
  JoranConfigurator joranConfigurator = new JoranConfigurator();
    joranConfigurator.setContext(loggerContext);
    loggerContext.reset();
    try {
     joranConfigurator.doConfigure(file);
    } catch (Exception e) {
    logger.error("logbackConfigPath Load logback config file error. Message: {}",e.getMessage());
    }
    StatusPrinter.printInCaseOfErrorsOrWarnings(loggerContext);
  }
  }
  }
 }
}

System.getProperty(“user.dir”) 是獲取你程序當(dāng)前的運(yùn)行路徑,這里也可以把這段代碼封裝成一個(gè)方法,配置文件的路徑可以以參數(shù)的形式傳入,也可以寫死。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • 30條Java代碼編寫經(jīng)驗(yàn)分享

    30條Java代碼編寫經(jīng)驗(yàn)分享

    你知道寫好Java代碼的30條經(jīng)驗(yàn)是什么嗎?這篇文章主要為大家分享了30條Java代碼編寫經(jīng)驗(yàn)技巧,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • SpringSecurity的安全過(guò)濾器鏈功能詳解

    SpringSecurity的安全過(guò)濾器鏈功能詳解

    本文介紹了如何配置SpringSecurity的安全過(guò)濾器鏈,包括定義URL路徑的訪問(wèn)權(quán)限、用戶認(rèn)證和授權(quán)配置、自定義CSRF過(guò)濾器等內(nèi)容,通過(guò)這些配置,可以實(shí)現(xiàn)對(duì)不同URL路徑的訪問(wèn)控制以及用戶的登錄、注銷等功能,感興趣的朋友一起看看吧
    2025-03-03
  • Java 中的字符串替換方法之replace, replaceAll 和 replaceFirst示例詳解

    Java 中的字符串替換方法之replace, replaceAll 和 rep

    在Java中,字符串的替換是一種常見的操作,特別是在處理文本和格式化輸出時(shí),本文將詳細(xì)討論這些方法的用法、區(qū)別以及示例,感興趣的朋友一起看看吧
    2024-12-12
  • MyBatis如何使用(一)

    MyBatis如何使用(一)

    這篇文章主要介紹了MyBatis如何使用(一)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • Java處理時(shí)間格式CST和GMT轉(zhuǎn)換方法示例

    Java處理時(shí)間格式CST和GMT轉(zhuǎn)換方法示例

    這篇文章主要給大家介紹了關(guān)于Java處理時(shí)間格式CST和GMT轉(zhuǎn)換方法的相關(guān)資料,相信很多小伙伴在時(shí)間格式轉(zhuǎn)換的時(shí)候非常頭疼,文中通過(guò)代碼示例介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09
  • Maven打包跳過(guò)測(cè)試的5種方式總結(jié)

    Maven打包跳過(guò)測(cè)試的5種方式總結(jié)

    使用Maven打包的時(shí)候,可能會(huì)因?yàn)閱卧獪y(cè)試打包失敗,這時(shí)候就需要跳過(guò)單元測(cè)試,下面這篇文章主要給大家介紹了關(guān)于Maven打包跳過(guò)測(cè)試的5種方式,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • SpringBoot自定義starter方式

    SpringBoot自定義starter方式

    本文介紹了如何創(chuàng)建一個(gè)自定義的Spring Boot Starter,以實(shí)現(xiàn)日志功能,通過(guò)使用SPI機(jī)制,可以在不修改啟動(dòng)類的情況下,實(shí)現(xiàn)自動(dòng)配置和功能導(dǎo)入,同時(shí),還討論了如何在自定義Starter中編寫必要的配置文件和注解,以確保功能的正確實(shí)現(xiàn)和配置的智能提示
    2025-02-02
  • Java編程中隨機(jī)數(shù)的生成方式總結(jié)

    Java編程中隨機(jī)數(shù)的生成方式總結(jié)

    在Java中利用自帶的類庫(kù)可以有三種途徑可以產(chǎn)生隨機(jī)數(shù),這里我們舉了一些簡(jiǎn)單的例子來(lái)進(jìn)行Java編程中隨機(jī)數(shù)的生成方式總結(jié),需要的朋友可以參考下
    2016-05-05
  • J2SE基礎(chǔ)之JDK環(huán)境變量配置

    J2SE基礎(chǔ)之JDK環(huán)境變量配置

    進(jìn)行java開發(fā),首先要安裝jdk,安裝了jdk后還要進(jìn)行環(huán)境變量配置,下面我們就來(lái)詳細(xì)探討下這個(gè)問(wèn)題。
    2016-05-05
  • Java elasticsearch安裝以及部署教程

    Java elasticsearch安裝以及部署教程

    這篇文章主要介紹了elasticsearch安裝以及部署教程,內(nèi)涵詳細(xì)的圖文展示與案例介紹,能夠幫助你從0成功部署這個(gè)框架,需要的朋友可以參考下
    2021-06-06

最新評(píng)論

祁东县| 临沂市| 辉县市| 鞍山市| 胶南市| 娄烦县| 辽中县| 镇江市| 珲春市| 昔阳县| 乃东县| 吉首市| 韶山市| 平阴县| 长治市| 红桥区| 景洪市| 嘉黎县| 南江县| 徐汇区| 交城县| 类乌齐县| 茶陵县| 昌江| 石渠县| 田东县| 西安市| 阳高县| 高青县| 邹城市| 鸡泽县| 贡嘎县| 镇江市| 田阳县| 娱乐| 年辖:市辖区| 汶上县| 广河县| 常熟市| 叶城县| 福安市|