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

logback 實(shí)現(xiàn)給變量指定默認(rèn)值

 更新時(shí)間:2021年08月30日 11:04:15   作者:踩姑涼的小蘑菇  
這篇文章主要介紹了logback 實(shí)現(xiàn)給變量指定默認(rèn)值操作,具有很好的參考家價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

logback 實(shí)現(xiàn)給變量指定默認(rèn)值

格式是 ${變量名:-默認(rèn)值}

**光有冒號(hào)還不夠,再加條短線后面才是默認(rèn)值**

    <appender name="info"  class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>/logs${log.folder:-/imeth}/info.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover -->
            <fileNamePattern>/logs${log.folder:-/imeth}/info.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- keep 30 days worth of history -->
            <maxHistory>30</maxHistory>
            <maxFileSize>${log.file.size.max:-50}MB</maxFileSize>
        </rollingPolicy>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>INFO</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
        <encoder>
            <pattern>
                [%d{yyyy-MM-dd HH:mm:ss}] [%thread] [%-5level] %logger{35} -  %msg%n
            </pattern>
        </encoder>
    </appender>

logback變量

定義變量

  • 在 logback.xml 中定義
  • 在命令行定義
  • 引入properties文件

在 logback.xml 中定義變量

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <property name="logBase" value="/logs"/>
...
</configuration>

在命令行定義變量

在命令行通過(guò)大D參數(shù)來(lái)定義

java -DHOME="/home/logstore" xxx.jar

引入properties文件

在properties文件定義變量。logback引入properties文件后,獲得變量。

通過(guò)文件路徑引入properties文件:

<configuration>
  <property file="/AppPath/logbackVars.properties" />
...
</configuration>

通過(guò)classpath引入properties文件:

<configuration>
  <property resource="logbackVars.properties" />
...
</configuration>

properties文件的格式是 key-value 型:

HOME=/logs

變量的作用域

變量有三個(gè)作用域:

  • local 作用域在配置文件內(nèi)有效
  • context 作用域的有效范圍延伸至 logger context
  • system 作用域的范圍最廣,整個(gè) JVM 內(nèi)都有效
  • logback 在替換變量時(shí),首先搜索 local 變量,然后搜索 context,然后搜索 system。

如何為變量指定 scope ?

<configuration>
  <property scope="context" name="home" value="/logs" />
  <appender name="FILE" class="ch.qos.logback.core.FileAppender">
    <file>/${home}/myApp.log</file>
...
  </appender>
...
</configuration>

變量的默認(rèn)值

在引用一個(gè)變量時(shí),如果該變量未定義,需要為其指定默認(rèn)值,寫(xiě)法是:

${變量名:-默認(rèn)值}

示例:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <property name="logBase" value="${HOME:-/logs}"/>
    <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>${logBase}/log.%d{yyyy-MM-dd}.log</FileNamePattern>
            <MaxHistory>60</MaxHistory>
        </rollingPolicy>
        <encoder>
            <pattern>%d{yy/MM/dd HH:mm:ss.SSS} %-5level %line %logger{15} - %msg %n</pattern>
            <charset>UTF-8</charset>
        </encoder>
    </appender>
...
</configuration>

變量使用

使用方式:

${變量名}

示例:參見(jiàn)前面示例中用法。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • IntelliJ IDEA 安裝目錄的核心文件的功能及用法

    IntelliJ IDEA 安裝目錄的核心文件的功能及用法

    這篇文章我們主要講解一下 IntelliJ IDEA 安裝目錄中的一些核心文件的功能及用法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2018-10-10
  • 一文搞懂Java中的注解和反射

    一文搞懂Java中的注解和反射

    這篇文章主要給大家介紹了關(guān)于Java中注解和反射的原理及使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • SpringBoot實(shí)現(xiàn)定時(shí)任務(wù)的三種方式小結(jié)

    SpringBoot實(shí)現(xiàn)定時(shí)任務(wù)的三種方式小結(jié)

    這篇文章主要介紹了SpringBoot實(shí)現(xiàn)定時(shí)任務(wù)的三種方式小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • springboot項(xiàng)目配置swagger2示例詳解

    springboot項(xiàng)目配置swagger2示例詳解

    Swagger是一款RESTful接口的文檔在線自動(dòng)生成、功能測(cè)試功能框架。本文重點(diǎn)給大家介紹springboot項(xiàng)目配置swagger2示例代碼詳解,需要的朋友參考下吧
    2021-09-09
  • JavaI/O深入學(xué)習(xí)之輸入和輸出

    JavaI/O深入學(xué)習(xí)之輸入和輸出

    這篇文章主要介紹了JavaI/O深入學(xué)習(xí)之輸入和輸出,Java類(lèi)庫(kù)中的I/O類(lèi)分成輸入和輸出兩部分,可以在JDK文檔里的類(lèi)層次結(jié)構(gòu)中查看到。,需要的朋友可以參考下
    2019-06-06
  • SpringBoot實(shí)現(xiàn)文件下載的四種方式

    SpringBoot實(shí)現(xiàn)文件下載的四種方式

    本文主要介紹了SpringBoot實(shí)現(xiàn)文件下載的四種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-11-11
  • Java編程實(shí)現(xiàn)時(shí)間和時(shí)間戳相互轉(zhuǎn)換實(shí)例

    Java編程實(shí)現(xiàn)時(shí)間和時(shí)間戳相互轉(zhuǎn)換實(shí)例

    這篇文章主要介紹了什么是時(shí)間戳,以及Java編程實(shí)現(xiàn)時(shí)間和時(shí)間戳相互轉(zhuǎn)換實(shí)例,具有一定的參考價(jià)值,需要的朋友可以了解下。
    2017-09-09
  • Hibernate Validation自定義注解校驗(yàn)的實(shí)現(xiàn)

    Hibernate Validation自定義注解校驗(yàn)的實(shí)現(xiàn)

    這篇文章主要介紹了Hibernate Validation自定義注解校驗(yàn)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 教你一步到位部署運(yùn)行MyBatis3源碼(保姆級(jí))

    教你一步到位部署運(yùn)行MyBatis3源碼(保姆級(jí))

    一個(gè)框架的運(yùn)行流程從最簡(jiǎn)單的一個(gè)helloworld來(lái)看其源碼就能了解到框架的原理是什么,這篇文章主要給大家介紹了關(guān)于如何一步到位部署運(yùn)行MyBatis3源碼的相關(guān)資料,需要的朋友可以參考下
    2022-06-06
  • 基于ThreadPoolTaskExecutor的使用說(shuō)明

    基于ThreadPoolTaskExecutor的使用說(shuō)明

    這篇文章主要介紹了基于ThreadPoolTaskExecutor的使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11

最新評(píng)論

上饶县| 东乌| 安吉县| 梁山县| 旌德县| 谢通门县| 静宁县| 四子王旗| 正阳县| 富顺县| 当雄县| 灵璧县| 五莲县| 亳州市| 沛县| 菏泽市| 高青县| 阜阳市| 磐石市| 呼和浩特市| 赣榆县| 清原| 墨竹工卡县| 文水县| 西吉县| 临汾市| 红桥区| 巴马| 环江| 鹤山市| 阿拉善右旗| 成安县| 碌曲县| 勐海县| 江都市| 永新县| 宽城| 乐平市| 陇南市| 肇庆市| 苗栗县|