LOG 4 jとSLF 4 jのつながり

1724 ワード

LOG 4 jでログを打つ子供靴で、突然SLF 4 jというものに出会ったら、LOG 4 jとは別のLOGのjarバッグだと思っているに違いありません.しかし不思議なことに、プロジェクトではLOG 4 jのパッケージが引用され、プロファイルさえ変わらない.では、彼ら二人はどんな関係ですか.
log 4 jみんなはすべて知っていて、多く言っていないで、重点的にslf 4 jを言います;
ゲート面(simple logging Facade for java)SLF 4 Jは各種loging
APIsは、エンドユーザーが導入時に自分の希を構成できるように、簡単な統合インタフェースを提供します.
望のloging APIs実現.FACADEという単語がない、典型的な顔モードの応用を見た.
正確には、slf 4 jは具体的なログシステムではなく、エンドアプリケーションの導入時にユーザがログシステムを容易に変更できるようにするユーザログシステムのfacadeである.
送信中、slf 4 jのAPIに従って開発を統一し、導入時に異なるログシステムパッケージを選択すると、自動的に異なるログシステムに変換することができる.例えば、JDKが持っているログ系を選択
いずれにしてもslf 4 j-api-1.5.10を必要とする.JArとslf 4 j-jdk 14-1.5.10.jar配置先
classpathでいいから、途中でJDKが持っているログシステムに耐えられなくなったら、log 4 jの日に変えたい
志システムは、slf 4 j-log 4 j 12-1.5.10を使用する必要がある.JAr置換slf 4 j-jdk 14-1.5.10.jarでいい
(もちろんlog 4 jのjarやプロファイルも必要)
SLF 4 Jはloggerオブジェクトを取得する:
private static final Logger logger = LoggerFactory.getLogger(Test.class);

ログ情報を出力:
参照
logger.debug(“debug”);
LOG 4 Jはloggerオブジェクトを取得する:

public class A {
private static Logger logger = Logger.getLogger(A.class);
}

次にslf 4 jとlog 4 jについてまとめます.
参照
(1)ほとんどの人はプログラムの中でloggerを書きます.error(exception)、実はこの時log 4 jは帰ってこのexception tostringを返します.本当の書き方はlogger(message.exception)であるべきだ.slf 4 jはプログラマーにこの間違いを犯させない.
(2)log 4 jは間接的にプログラマーにstring加算の書き方を奨励するが,slf 4 jにはこの問題はない.
loggerを使ってもいいですerror("{} is+serviceid",serviceid);
(3)slf 4 jを用いることで、提供される様々な集団の実装jarを容易に使用することができる.(commons-logger類似)
(4)commons-loggerとlog 4 j mergeからとても便利で、slf 4 jもswingのtoolsを提供してみんなにこのmergeを完成させることを助けます.
注意:以上の文字はhttp://blog.csdn.net/lifuxiangcaohui/article/details/7278595を選択します.