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
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
Powered by:
BlogJava
Copyright © Jhonney
導航
BlogJava
首頁
新隨筆
聯系
聚合
管理
<
2011年7月
>
日
一
二
三
四
五
六
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
留言簿
(3)
給我留言
查看公開留言
查看私人留言
隨筆分類
(11)
原創區(3)
(rss)
點滴生活(2)
(rss)
轉載區(6)
(rss)
隨筆檔案
(49)
2010年6月 (1)
2008年4月 (2)
2008年3月 (3)
2007年12月 (2)
2007年9月 (2)
2007年8月 (1)
2007年7月 (10)
2007年6月 (15)
2007年5月 (3)
2007年4月 (3)
2007年3月 (7)
文章檔案
(1)
2007年3月 (1)
相冊
s+
blog鏈接
Martin Fowler's Bliki 中文版
江南白衣
浪花一朵朵
簡易Java框架
Java收藏
Java視線論壇 首頁
JR - 匯聚技術精英,增進技術交流
Martin Fowler Articles
Matrix-與Java共舞
PicoContainer - Home
Springframework.org
最新評論
1.?re: 關于log4j重復輸出的問題
感謝分享~~
--herry
2.?re: 單例的雙檢鎖
把 IF 里面那balancer 改成 helper ,忘了改了!
--Tonight
3.?re: 單例的雙檢鎖
評論內容較長,點擊標題查看
--Tonight
4.?re: cvc-complex-type.2.4.a錯誤解決方法[未登錄]
頂
--123
5.?re: cvc-complex-type.2.4.a錯誤解決方法[未登錄]
謝謝大哥
--小劉
閱讀排行榜
1.?ORACLE 關連更新 update select(17207)
2.?cvc-complex-type.2.4.a錯誤解決方法(7149)
3.?tete009的Firefox(6890)
4.?ThreadLocal(3036)
5.?Dell OEM XP SP2的原版鏡像(2838)
主站蜘蛛池模板:
婷婷综合缴情亚洲狠狠尤物
|
野花香高清视频在线观看免费
|
午夜一区二区免费视频
|
亚洲视频在线观看不卡
|
日本中文字幕免费高清视频
|
国产亚洲综合色就色
|
在线观看免费视频一区
|
亚洲精品无码不卡在线播HE
|
99精品视频在线观看免费
|
亚洲国产精品VA在线观看麻豆
|
一级有奶水毛片免费看
|
亚洲AV无码久久精品色欲
|
无码AV片在线观看免费
|
老汉色老汉首页a亚洲
|
青娱乐免费在线视频
|
亚洲欧洲av综合色无码
|
啦啦啦www免费视频
|
黄色网址在线免费观看
|
中文字幕亚洲综合久久男男
|
野花香高清视频在线观看免费
|
久久狠狠高潮亚洲精品
|
无码人妻精品一二三区免费
|
久久亚洲AV成人无码国产最大
|
亚洲A丁香五香天堂网
|
国产啪精品视频网站免费尤物
|
四虎亚洲精品高清在线观看
|
国外成人免费高清激情视频
|
免费激情网站国产高清第一页
|
精品亚洲成α人无码成α在线观看
|
亚洲av无码无在线观看红杏
|
最近中文字幕免费mv视频8
|
国产精品手机在线亚洲
|
久久久久久a亚洲欧洲aⅴ
|
台湾一级毛片永久免费
|
国产精品观看在线亚洲人成网
|
国产日产亚洲系列
|
97国产在线公开免费观看
|
亚洲AV无码一区二区三区久久精品
|
亚洲中文字幕不卡无码
|
99久久99久久精品免费看蜜桃
|
亚洲精品无码你懂的
|