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

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

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

    Jhonney的專欄

       ----人見人愛
    隨筆 - 49, 文章 - 1, 評論 - 23, 引用 - 0
    數據加載中……

    關于log4j重復輸出的問題

    ???今天接著昨天的工作干,把自己寫的框架和程序結合,具體測試一下框架。代碼全部跑通后,一個師妹問了一個關于JDBC的問題,由于以前開發多數底層要么用的工具,要么別人已經封裝好了,所以對這個問題弄了半天,關于ResultSet中sql用select a.*,b* from..的問題,問題是程序老是報超出邊界的錯誤,結論是像前面的sql語句java只認為只有2列,解決辦法需要寫清各個列。
    ???由于這件事的問題,我感到項目中他們數據庫底層沒有統一,且沒有調試工具,我寫的框架其實很早就寫好了,但一直沒有給他們講,所以今天想寫個關于框架使用的ppt,
    ?? 這時就碰到了Log4j重復輸出的問題,摸索一會兒,感覺應該出在log4j的logger繼承上,但一直找不到原因,后來偶爾翻到刑紅瑞的blog,才知道錯誤,錯誤解決辦法:
    【quto to 賈斯汀的網志
    log4j重復輸出log信息原因和解決辦法
    ???????????????????????????????????????
    log4j的logger(舊版本稱logger)是層次結構的,子logger會繼承父logger的屬性,appender也是可繼承的屬性,這常常容易導致配置錯誤而引起的log4j輸出重復的log信息
    log4j的logger(舊版本稱logger)是層次結構的,子logger會繼承父logger的屬性,appender也是可繼承的屬性,這常常容易導致配置錯誤而引起的log4j輸出重復的log信息。如果在在父子logger中引用了相同的appender時,例子:
    ????
    <logger?name="com.erry.model">
    ????????
    <level?value="DEBUG"/>
    ????????
    <appender-ref?ref="CONSOLE"/>
    ????
    </logger>
    ????
    <logger?name="com.erry.service">
    ????????
    <level?value="DEBUG"/>
    ????????
    <appender-ref?ref="CONSOLE"/>
    ????
    </logger>
    ????
    <root>
    ????????
    <level?value="WARN"/>
    ????????
    <appender-ref?ref="CONSOLE"/>
    ????
    </root>

    由于子logger(com.erry.model和com.erry.service)繼承了父logger(ROOT)的appender,加上其本身引用的appender總共會在2個appender上輸出消息,由于這兩個appender實際上是同一個appender,所以結果會是相同的消息被重復輸出。解決這個問題很簡單,只要注意不要重復引用父logger已經引用的appender即可。上述例子的正確配置如下:
    ????
    <logger?name="com.erry.model">
    ????????
    <level?value="DEBUG"/>
    ????
    </logger>
    ????
    <logger?name="com.erry.service">
    ????????
    <level?value="DEBUG"/>
    ????
    </logger>
    ????
    <root>
    ????????
    <level?value="WARN"/>
    ????????
    <appender-ref?ref="CONSOLE"/>
    ????
    </root>



    posted on 2007-03-23 18:14 Jhonney 閱讀(2288) 評論(1)  編輯  收藏

    評論

    # re: 關于log4j重復輸出的問題  回復  更多評論   

    感謝分享~~
    2011-07-27 16:53 | herry

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


    網站導航:
     
    主站蜘蛛池模板: 亚洲Av无码乱码在线播放| 67pao强力打造高清免费| 日韩免费视频一区| 亚洲偷自拍另类图片二区| 99久久综合国产精品免费| 亚洲午夜一区二区三区| 成人午夜18免费看| 亚洲av乱码中文一区二区三区| 午夜视频在线在免费| 国产精品成人亚洲| 亚洲美女高清一区二区三区 | 中文字幕在线免费视频| 亚洲午夜福利在线观看| 99精品视频在线观看免费播放| 亚洲沟沟美女亚洲沟沟| 国产精品视频免费一区二区| 在线观看免费亚洲| 亚洲无人区午夜福利码高清完整版| APP在线免费观看视频| 精品亚洲麻豆1区2区3区| 久久天天躁狠狠躁夜夜免费观看| 国产精品亚洲专区无码WEB| 亚洲日韩国产成网在线观看| 毛片在线全部免费观看| 亚洲香蕉在线观看| 亚洲成a人一区二区三区| 久久精品国产免费一区| 亚洲熟妇丰满xxxxx| 国产精品亚洲玖玖玖在线观看| 久别的草原电视剧免费观看| 亚洲午夜国产精品无卡| 免费A级毛片无码久久版| 成人黄网站片免费视频| 国产AV旡码专区亚洲AV苍井空| 免费真实播放国产乱子伦| 日本免费高清视频| 亚洲av永久无码天堂网| 久久精品国产亚洲| 日本免费一区二区三区最新| 另类免费视频一区二区在线观看| 亚洲色偷偷偷综合网|