<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    log4j和common-logging結合使用

    Posted on 2006-07-06 17:31 負人博客 閱讀(2936) 評論(0)  編輯  收藏 所屬分類: 開源研究
    ???? 在我們的日常開發中,經常需要通過輸出一些信息進行程序的調試,如果到處都用system.out.println()則在項目發布之后要逐一刪除,而log4j提供了一種新的調試輸出機制以解決輸出的問題。log4j的原理是使用一個配置文件log4j.properties進行管理,在調試的時候可以把輸出級別調低,項目正式發布之后把級別調高,這樣以前的一些輸出就可以屏蔽了,不用到程序當中再進行逐一刪除。關于log4j的介紹網上很多,隨便google一下就可以順利的使用log4j了。在這里介紹一下log4j和common-logging的聯合使用,因為在很多框架當中都是結合了common-logging和log4j的應用。像spring之類的框架里面存在很多debug輸出,用common-logging可以很容易的打印輸出,以用于了解spring的運行機制!
    ?? 使用介紹:
    ?? 1.下載jar包:
    ?????? log4j-1.2.9.jar和commons-logging.jar
    ?? 2.在web目錄的classes下面添加兩個文件:commons-logging.properties和log4j.properties??????
    ????? log4j.properties(例子):
    ????????? ##LOGGERS##
    ???? ???? #define a logger
    ????????? log4j.rootLogger=INFO,console,file
    ????????? #log4j.rootLogger=DEBUG,console,file
    ????????? ##APPENDERS##
    ???????? #define an appender named console,which is set to be a ConsoleAppender
    ???????? log4j.appender.console=org.apache.log4j.ConsoleAppender
    ???????? #define an appender named file,which is set to be a RollingFileAppender
    ??? ???? log4j.appender.file=org.apache.log4j.RollingFileAppender
    ???????? log4j.appender.file.File=log-wst.txt
    ????? ?? ##LAYOUTS##
    ????? ?? #assign a SimpleLayout to console appender
    ???????? log4j.appender.console.layout=org.apache.log4j.SimpleLayout
    ???????? #assign a PatternLayout to file appender
    ???????? log4j.appender.file.layout=org.apache.log4j.PatternLayout
    ???????? log4j.appender.file.layout.ConversionPattern=%p - %m%n
    ?????
    ????? commons-logging.properties(例子)
    ????????? ##
    ????????? org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JCategoryLog
    ?? 3.應用實例:
    ???? package com.wes.test;
    ???? import org.apache.commons.logging.Log;
    ???? import org.apache.commons.logging.LogFactory;
    ??? public abstract class BaseClass{
    ???????? /** 用于日志輸出 */
    ???????? protected Log log = LogFactory.getLog(this.getClass());
    ??? }
    ??? 這樣在子類中可以直接調用log輸出即可:
    ?? public class?DerivedClass extends BaseClass {
    ???????? pulbic void test() {
    ?????????????//如果log4j.properties文件配置的級別<=info則可以正常輸出(info/debug)?
    ??????????? log.info("這是info級別的輸出");???
    ?????????????//如果log4j.properties文件的級別為debug則可以正常輸出(debug)?
    ??????????? log.debug("這是debug級別的輸出");
    ???????? }
    ?? }

    ?


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    posts - 26, comments - 5, trackbacks - 0, articles - 8

    Copyright © 負人博客

    主站蜘蛛池模板: A片在线免费观看| 粉色视频成年免费人15次| 免费看搞黄视频网站| 亚洲精品乱码久久久久久久久久久久 | 亚洲精品无码av天堂| 日本在线观看免费高清| 国产在线观看免费完整版中文版 | 中文字幕精品亚洲无线码二区| 美女被暴羞羞免费视频| 四只虎免费永久观看| 一区二区三区免费在线视频 | www.免费在线观看| 亚洲三级在线视频| 成人免费无遮挡无码黄漫视频| 亚洲午夜福利在线视频| 免费一区二区视频| 中文字幕免费在线视频| 亚洲成人中文字幕| 一个人免费观看www视频在线| 亚洲精品无码av中文字幕| 丁香亚洲综合五月天婷婷| 久久www免费人成精品香蕉 | 亚洲乱亚洲乱妇无码| 免费h成人黄漫画嘿咻破解版| 国产精品免费久久久久影院| 久久精品亚洲综合一品| 思思re热免费精品视频66| 337P日本欧洲亚洲大胆艺术图| 亚洲男人天堂2020| 51精品视频免费国产专区| 亚洲综合小说另类图片动图| 亚洲AⅤ无码一区二区三区在线 | 亚洲av无码成人黄网站在线观看 | 未满十八私人高清免费影院| 亚洲AV永久无码精品| 欧美日韩国产免费一区二区三区| 高h视频在线免费观看| 亚洲综合一区二区精品导航| 国产美女无遮挡免费视频| 一级成人a毛片免费播放| 亚洲国产区男人本色|