commons-logging和log4j 两个日志组件<br> 一、简介<br> 作用:commons-logging和log4j 是用来记录日志文件的一套api,apache基金会开发的。log4j是专门<br>处理日志文件的。不需要commons-logging,log4j也可以运行。<br> commons-logging用来管理log4j,commons-logging也可以配合别的日志系统一起使用。<br> commons-logging没有log4j也可以单独实现日志,但是功能比较简单。<br> 它自身的日志功能平常弱(只有一个简单的SimpleLog?),所以一般不会单独使用它<br> 一般来说,我们是两者配使用的。<br> 提供一个统一的日志接口,简单了操作,同时避免项目与某个日志实现系统紧密耦合。<br> 二、下载<br> 下载:百度中直接输入“log4j下载”可被指引到官网去下载。当前版本是1.2<br> log4j: http://logging./log4j/1.2/download.html<br> commons-logging http://commons./proper/commons-logging/<br> 三、引入<br> 在项目中添加外部jar包,把log4j引入到项目中来。<br> 复制到web-inf/lib目录下,然后再eclipse中刷新一下文件夹。<br> 四、使用<br> 详细参考<br> 稍微简单一些的<br> http://blog./uid-26746984-id-3379937.html<br> 稍微详细一些的<br> http://blog.csdn.net/jimmee/article/details/2168452<br> 1.配置文件(可以有两种之一,.properties文件,.xml文件)<br> log4j.properties,放到src目录下,没有格式,容易出错,但是看起来简单一些<br> DEBUG、INFO、WARN、ERROR、FATAL 日志级别<br> A1,R,信息输出的目的地。<br> log4j.rootLogger=info,A1,R<br> log4j.appender.A1=org.apache.log4j.ConsoleAppender<br> log4j.appender.A1.Threshold=debug<br> log4j.appender.A1.target=System.out<br> log4j.appender.A1.layout=org.apache.log4j.PatternLayout<br> log4j.appender.A1.layout.ConversionPattern=%c -%m%n<br> log4j.appender.R=org.apache.log4j.FileAppender<br> log4j.appender.R.Threshold=error<br> log4j.appender.R.ImmediateFlush=true<br> log4j.appender.R.File=../logs/HelloLog4j.log<br> log4j.appender.R.Append=true<br> log4j.appender.R.layout=org.apache.log4j.PatternLayout<br> log4j.appender.R.layout.ConversionPattern=%c -%m%n<br> log4j.xml,放到lib目录下,有格式约束,不容易出错,但是看起来复杂一些。<br> 2.导入包<br> import org.apache.log4j.*;<br> //import org.apache.commons.logging. * ; <br> 3.获取日志对象<br> public static Logger logger=LogManager.getLogger(LogListener.class);<br> public static Logger logger=LogManager.getLogger("javastudy.LogListener");<br> //private static Log logger = LogFactory.getLog(YouClassName. class )<br> 4.日志级别(根据问题的严重程度)<br> DEBUG、INFO、WARN、ERROR、FATAL<br> logger.error("Did it again!"); <br> logger.info("我是info信息"); <br> logger.debug("我是debug信息");<br> logger.warn("我是warn信息");<br> logger.fatal("我是fatal信息");<br> logger.log(Level.DEBUG, "我是debug信息"); <br> |
|