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

java中l(wèi)og使用小結(jié)

 更新時(shí)間:2023年09月11日 09:14:30   作者:2021不再有雨  
本文主要介紹了java中l(wèi)og使用小結(jié),一文搞清楚java所有日志框架,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一、概述

本文乃博主嘔心瀝血之作,一文搞清楚java所有日志框架。閱讀前請(qǐng)先收藏。

1.1. 核心日志框架

核心日志框架,就是實(shí)際干活的日志框架??傮w而言,市面上的使用日志框架體系主要有

  • jul(java.util.logging) jdk1.4加入,為了對(duì)抗log4j,效率靈活性較差使用較少
  • log4j 最廣泛應(yīng)用的日志框架,成為事實(shí)上的標(biāo)準(zhǔn)
  • logback 基于slf4j-api接口實(shí)現(xiàn),性能高于log4j
  • log4j2 重寫了log4j,性能高于log4j,logback

1.2 門面日志框架

核心日志框架能單獨(dú)使用,但多框架集成使用時(shí)使用會(huì)有沖突。所以出現(xiàn)了門面日志框架。

門面日志框架特征有:

  • 提供統(tǒng)一日志使用接口,核心日志框架去實(shí)現(xiàn)門面日志框架的接口。
  • 應(yīng)用不使用具體的核心日志框架,只使用門面日志框架。不依賴核心日志框架,只依賴門面日志框架。
  • 這樣就算底層換核心框架依賴,不影響現(xiàn)有日志的使用。

目前主流的門面框架主要有JCL和SLF4J:

  • JCL(commings-log) Apache提供的comming-log
  • SLF4J(simple log facade for java) Log4j、Logback、Log4j2作者提供

二、最佳實(shí)踐

2.1 核心日志框架API包

各核心日志框架單獨(dú)使用的依賴,demo里的version不限制。

  • log4j
<!-- log4j的API包 -->
<dependency>
  <groupId>log4j</groupId>
  <artifactId>log4j</artifactId>
  <version>1.2.17</version>
</dependency>
  • log4j2
<!-- log4j2的兩個(gè)API包 -->
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>2.9.1</version>
</dependency>
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.9.1</version>
</dependency>
  • logback
        <!-- logback的兩個(gè)API包-->
				<!-- logback無法單獨(dú)使用,只能和slf4j集合使用-->
			  <!-- logback-classic實(shí)現(xiàn)了slf4j向logback的轉(zhuǎn)換-->
			  <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <version>1.2.3</version>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.2.3</version>
        </dependency>
  • jul

jdk自帶API,無依賴包

2.2 門面日志框架依賴

  • jcl
        <!-- jcl的API包 -->
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.1</version>
        </dependency>

slf4j

   <!-- slf4j的API -->
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.25</version>
    </dependency>

2.3 集成使用

2.3.1 集成jcl

總結(jié)如下:

  • JCL集成其他日志框架,只有l(wèi)og4j/jul沒有中間包
  • JCL同時(shí)集成其他核心日志框架,使用JCL打印日志優(yōu)先級(jí): log4j2>log4j>jul
  • JCL同時(shí)和jul/log4j/log4j2集成,jcl沒有全局整合能力各日志全部生效
  • JCL同時(shí)和jul/log4j/log4j2集成,此時(shí)使用JCL打印日志生效的是log4j2
  • slf4j轉(zhuǎn)向JCL前提是沒有slf4j的實(shí)現(xiàn)框架依賴,否則slf4j實(shí)現(xiàn)優(yōu)先級(jí)更高

集成jul

默認(rèn)jcl就是集成jul的

        <!-- jcl的API包 -->
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.3</version>
        </dependency>

集成log4j

        <!-- jcl的API包 -->
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.3</version>
        </dependency>
        <!-- log4j的API -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>

集成log4j2

        <!-- jcl的API包 -->
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.2</version>
        </dependency>
        <!-- log4j2的兩個(gè)API包 -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.9.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.9.1</version>
        </dependency>
        <!-- 適配包:jcl轉(zhuǎn)向log4j2  -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-jcl</artifactId>
            <version>2.9.1</version>
        </dependency>

集成slf4j

 <!-- slf4j的API包 -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- 適配包:slf4j轉(zhuǎn)向jcl -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-jcl</artifactId>
            <version>1.7.25</version>
        </dependency>
			 <!-- JCL的實(shí)現(xiàn)包,可以為jul/log4j/logj42,這里省略。默認(rèn)是jul -->

2.3.2 集成slf4j

2.3.2.1 slf4j集成單一框架

總結(jié)如下:

  • SLF4J轉(zhuǎn)向其他日志框架都需要對(duì)應(yīng)適配包
  • 其他日志框架經(jīng)過JCL轉(zhuǎn)向SLF4J時(shí),一般可以省略JCL通過匹配包直接轉(zhuǎn)向SLF4J不再展開
  • SLF4J和具體日志框架的雙向適配包不能同時(shí)存在(需排除沖突),否則會(huì)循環(huán)依賴棧溢出.包括:
    • slf4j-jdk14和jul-to-slf4j(運(yùn)行時(shí)直接棧溢出)
    • slf4j-log4j12和log4j-over-slf4j(啟動(dòng)會(huì)檢測(cè)報(bào)錯(cuò))
    • log4j-slf4j-impl和log4j-to-slf4j(運(yùn)行時(shí)直接棧溢出)
    • slf4j-jcl和jcl-over-slf4j(啟動(dòng)會(huì)檢測(cè)報(bào)錯(cuò))

集成jul

   			<!-- slf4j的API -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- 適配包:slf4j轉(zhuǎn)向jul -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-jdk14</artifactId>
            <version>1.7.25</version>
        </dependency>
				<!-- 適配包:jul轉(zhuǎn)向slf4j -->
        <!-- 若和slf4j-jdk14包同時(shí)存在會(huì)造成jul和slf4j循環(huán)轉(zhuǎn)化造成棧溢出,所以要排除 -->
<!--        <dependency>-->
<!--            <groupId>org.slf4j</groupId>-->
<!--            <artifactId>jul-to-slf4j</artifactId>-->
<!--            <version>1.7.25</version>-->
<!--        </dependency>-->

集成log4j

        <!-- log4j的API包 -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
        <!-- slf4j的API -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- log4j對(duì)slf4j的實(shí)現(xiàn):log4j轉(zhuǎn)slf4j -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- 適配包:log4j轉(zhuǎn)向slf4j -->
        <!-- log4j-over-slf4j和slf4j-log4j12同時(shí)存在會(huì)循環(huán)依賴棧溢出,需要排除-->
<!--        <dependency>-->
<!--            <groupId>org.slf4j</groupId>-->
<!--            <artifactId>log4j-over-slf4j</artifactId>-->
<!--            <version>1.7.25</version>-->
<!--        </dependency>-->

集成log4j2

        <!-- log4j2的兩個(gè)API包 -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.9.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.9.1</version>
        </dependency>
        <!-- slf4j的API -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- 適配包: slf4j轉(zhuǎn)向log4j2 -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-slf4j-impl</artifactId>
            <version>2.9.1</version>
        </dependency>
        <!-- 適配包: log4j2轉(zhuǎn)向slf4j -->
        <!-- log4j-to-slf4j和log4j-slf4j-impl同時(shí)存在會(huì)循環(huán)依賴棧溢出,需要排除-->
<!--        <dependency>-->
<!--            <groupId>org.apache.logging.log4j</groupId>-->
<!--            <artifactId>log4j-to-slf4j</artifactId>-->
<!--            <version>2.9.1</version>-->
<!--        </dependency>-->

集成logback

<!-- slf4j的API包 -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- logback的兩個(gè)API包-->
        <!-- logback的Log相關(guān)API和包路徑和slf4j一樣,所以logback可以看作是slf4j的默認(rèn)實(shí)現(xiàn)包-->
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <version>1.2.3</version>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.2.3</version>
        </dependency>

集成JCL

        <!-- jul默認(rèn)是JCL默認(rèn)的實(shí)現(xiàn)包,也可以指定為log4j/log4j2 -->
				<!-- jcl的API包 -->
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.1</version>
        </dependency>
        <!-- slf4j的API包 -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- 適配包: slf4j轉(zhuǎn)向jcl -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-jcl</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- jcl-over-slf4j和slf4j-jcl同時(shí)存在會(huì)循環(huán)依賴棧溢出,需要排除-->
        <!-- 適配包: jcl轉(zhuǎn)向slf4j -->
<!--        <dependency>-->
<!--            <groupId>org.slf4j</groupId>-->
<!--            <artifactId>jcl-over-slf4j</artifactId>-->
<!--            <version>1.7.25</version>-->
<!--        </dependency>-->

2.3.2.2 slf4j整合混合框架

slf4j獲取具體框架的流程如下,可得知slf4j最終只能轉(zhuǎn)向單個(gè)日志框架。

LoggerFactory.getLogger觸發(fā)初始化
-> 根據(jù)classLoader查找org/slf4j/impl/StaticLoggerBinder.class,check不能有多個(gè)
-> 觸發(fā)org.slf4j.impl.StaticLoggerBinder(不同集成框架路徑相同實(shí)現(xiàn)不同)的getBean初始化
-> 報(bào)告StaticLoggerBinder的實(shí)際采用
-> slf4j版本檢驗(yàn)
-> 根據(jù)StaticLoggerBinder獲取org.slf4j.ILoggerFactory
-> 根據(jù)ILoggerFactory獲取到org.slf4j.Logger

兩個(gè)或以上的日志框架使用時(shí),需要整合。達(dá)到以下目標(biāo):

  • 全部日志API生效,能正常輸出日志
  • 排除沖突,避免循環(huán)轉(zhuǎn)換棧溢出
  • 排除沖突,避免slf4j轉(zhuǎn)向?qū)崿F(xiàn)框架

根據(jù)最終轉(zhuǎn)向的日志框架分類:

最終整合為jul

最終整合為log4j

最終整合為log4j2

最終整合為logback

三、總結(jié)

3.1 所有相關(guān)包

3.1.1 核心日志框架包

        <!-- log4j的API包 -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
        <!-- log4j2的兩個(gè)API包 -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.9.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.9.1</version>
        </dependency>
				<!-- logback的兩個(gè)API包-->
        <!-- logback的Log相關(guān)API和包路徑和slf4j一樣,所以logback可以看作是slf4j的默認(rèn)實(shí)現(xiàn)包-->
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <version>1.2.3</version>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.2.3</version>
        </dependency>

3.1.2 門面日志框架

<!-- slf4j的API -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.25</version>
        </dependency>
			  <!-- jcl的API包 -->
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.1</version>
        </dependency>

3.1.3 適配包

        <!-- 適配包:slf4j轉(zhuǎn)向jul -->
        <!-- jul-to-slf4j和slf4j-jdk14包同時(shí)存在會(huì)造成jul和slf4j循環(huán)轉(zhuǎn)化,所以要排除 -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-jdk14</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- 適配包:jul轉(zhuǎn)向slf4j -->
        <!-- jul-to-slf4j和slf4j-jdk14包同時(shí)存在會(huì)造成jul和slf4j循環(huán)轉(zhuǎn)化,所以要排除 -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>jul-to-slf4j</artifactId>
            <version>1.7.25</version>
        </dependency>
				<!-- 適配包:slf4j轉(zhuǎn)向log4j -->
        <!-- log4j-over-slf4j和slf4j-log4j12同時(shí)存在會(huì)循環(huán)依賴棧溢出,需要排除-->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- 適配包:log4j轉(zhuǎn)向slf4j -->
        <!-- log4j-over-slf4j和slf4j-log4j12同時(shí)存在會(huì)循環(huán)依賴棧溢出,需要排除-->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>log4j-over-slf4j</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- 適配包: slf4j轉(zhuǎn)向log4j2 -->
        <!-- log4j-to-slf4j和log4j-slf4j-impl同時(shí)存在會(huì)循環(huán)依賴棧溢出,需要排除-->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-slf4j-impl</artifactId>
            <version>2.9.1</version>
        </dependency>
        <!-- 適配包: log4j2轉(zhuǎn)向slf4j -->
        <!-- log4j-to-slf4j和log4j-slf4j-impl同時(shí)存在會(huì)循環(huán)依賴棧溢出,需要排除-->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-to-slf4j</artifactId>
            <version>2.9.1</version>
        </dependency>
        <!-- 適配包: slf4j轉(zhuǎn)向jcl -->
        <!-- jcl-over-slf4j和slf4j-jcl同時(shí)存在會(huì)循環(huán)依賴棧溢出,需要排除-->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-jcl</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- jcl-over-slf4j和slf4j-jcl同時(shí)存在會(huì)循環(huán)依賴棧溢出,需要排除-->
        <!-- 適配包: jcl轉(zhuǎn)向slf4j -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>jcl-over-slf4j</artifactId>
            <version>1.7.25</version>
        </dependency>
        <!-- 適配包:jcl轉(zhuǎn)向log4j2  -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-jcl</artifactId>
            <version>2.9.1</version>
        </dependency>

3.2 依賴沖突解決總結(jié)

雙向適配包循環(huán)依賴

slf4j-jdk14和jul-to-slf4j(運(yùn)行時(shí)直接棧溢出)
slf4j-log4j12和log4j-over-slf4j(啟動(dòng)會(huì)檢測(cè)報(bào)錯(cuò))
log4j-slf4j-impl和log4j-to-slf4j(運(yùn)行時(shí)直接棧溢出)
slf4j-jcl和jcl-over-slf4j(啟動(dòng)會(huì)檢測(cè)報(bào)錯(cuò))

slf4j單個(gè)實(shí)現(xiàn)類

使用slf4j整合其他框架時(shí),只能轉(zhuǎn)向單個(gè)日志框架,即class路徑只能有一個(gè)org.slf4j.impl.StaticLoggerBinder

因此以下包不能同時(shí)使用,只能出現(xiàn)一個(gè):

slf4j-jdk14

slf4j-log4j12

log4j-slf4j-impl

logback-classic

slf4j-jcl

其他沖突

比如:

log4j.jar 低版本的和高版本沖突:目前測(cè)試下來:log4j1.2.6和1.2.17 兩個(gè)jar同時(shí)引入導(dǎo)致日志不能打印

到此這篇關(guān)于java中l(wèi)og使用小結(jié)的文章就介紹到這了,更多相關(guān)java log使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java實(shí)現(xiàn)的打地鼠小游戲完整示例【附源碼下載】

    Java實(shí)現(xiàn)的打地鼠小游戲完整示例【附源碼下載】

    這篇文章主要介紹了Java實(shí)現(xiàn)的打地鼠小游戲,結(jié)合完整實(shí)例形式分析了Java多線程操作及鍵盤按鍵響應(yīng)實(shí)現(xiàn)的打地鼠游戲功能相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • 使用Spring的FactoryBean創(chuàng)建和獲取Bean對(duì)象方式

    使用Spring的FactoryBean創(chuàng)建和獲取Bean對(duì)象方式

    這篇文章主要介紹了使用Spring的FactoryBean創(chuàng)建和獲取Bean對(duì)象方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • Java基礎(chǔ)之枚舉Enum類案例詳解

    Java基礎(chǔ)之枚舉Enum類案例詳解

    這篇文章主要介紹了Java基礎(chǔ)之枚舉Enum類案例詳解,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-05-05
  • Java線程池7個(gè)參數(shù)的詳細(xì)含義

    Java線程池7個(gè)參數(shù)的詳細(xì)含義

    java多線程開發(fā)時(shí),常常用到線程池技術(shù),這篇文章是對(duì)創(chuàng)建java線程池時(shí)的七個(gè)參數(shù)的詳細(xì)解釋,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • idea中文件被Mark as Plain Text后恢復(fù)方式

    idea中文件被Mark as Plain Text后恢復(fù)方式

    在IntelliJ IDEA中,如果錯(cuò)誤地將文件標(biāo)記為純文本(Mark as Plain Text),可以通過在項(xiàng)目目錄中右鍵點(diǎn)擊文件并選擇“Mark as”來恢復(fù)原文件類型
    2024-11-11
  • Springboot配置文件相關(guān)語法及讀取方式詳解

    Springboot配置文件相關(guān)語法及讀取方式詳解

    本文主要介紹了Spring Boot中的兩種配置文件形式,即.properties文件和.yml/.yaml文件,詳細(xì)講解了這兩種文件的語法和讀取方式,同時(shí),還介紹了使用@ConfigurationProperties注解和Environment接口讀取配置文件的方法,并提供了具體的讀取示例
    2025-12-12
  • Java的HashSet源碼詳解

    Java的HashSet源碼詳解

    這篇文章主要介紹了Java的HashSet源碼詳解,HashSet底層封裝的是HashMap,所以元素添加會(huì)放到HashMap的key中,value值使用new Object對(duì)象作為value,所以HashSet和HashMap的所具有的特點(diǎn)是類似的,需要的朋友可以參考下
    2023-09-09
  • 簡(jiǎn)述Java中進(jìn)程與線程的關(guān)系_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    簡(jiǎn)述Java中進(jìn)程與線程的關(guān)系_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    在 Java 語言中,對(duì)進(jìn)程和線程的封裝,分別提供了 Process 和 Thread 相關(guān)的一些類。本文首先簡(jiǎn)單的介紹如何使用這些類來創(chuàng)建進(jìn)程和線程
    2017-05-05
  • Java開發(fā)中StepBuilder模式詳解

    Java開發(fā)中StepBuilder模式詳解

    Step builder多階段步驟構(gòu)造器模式是一種對(duì)象創(chuàng)建軟件設(shè)計(jì)模式,與傳統(tǒng)構(gòu)建器模式進(jìn)行比較時(shí),步驟構(gòu)建器模式提供了一些簡(jiǎn)潔的好處,這篇文章主要介紹了Java開發(fā)中StepBuilder模式的相關(guān)資料,需要的朋友可以參考下
    2026-01-01
  • Maven  pom.xml與settings.xml詳解

    Maven pom.xml與settings.xml詳解

    這篇文章主要介紹了Maven pom.xml與settings.xml詳解的相關(guān)資料,這里對(duì)pom.xml與setting.xml詳細(xì)的研究說明,需要的朋友可以參考下
    2016-12-12

最新評(píng)論

辽中县| 石狮市| 武夷山市| 鄂托克旗| 友谊县| 永登县| 庆城县| 阳朔县| 上杭县| 巨鹿县| 蓝田县| 惠水县| 绥滨县| 平利县| 麻栗坡县| 杂多县| 东港市| 雅江县| 崇义县| 琼结县| 靖安县| 哈巴河县| 澄迈县| 保亭| 贵港市| 西平县| 勐海县| 乳源| 登封市| 彰武县| 邳州市| 安庆市| 育儿| 吉木萨尔县| 桂东县| 开封市| 交城县| 屯门区| 贺州市| 南靖县| 罗田县|