在上一篇转载中已经有log4j的详细说明,这里只是log4j入门性的使用。
1.首先是bean代码
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package org.sinter.domain;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
/**
*
* @author brucechen
*/
public class KisBean {
private String id;
private String name;
private String nickname;
public KisBean() {
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
@Override
public String toString() {
if(this.id==null||this.name==null||this.nickname==null){
Logger log = Logger.getRootLogger();
PropertyConfigurator.configure("src/log4j.properties");
log.info("there are properties is null");
}
return "the id is " + this.id + ", the name is " + this.name + ", the nick name is " + this.nickname;
}
}
2.其次是业务代码
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package org.sinter.main;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
import org.sinter.domain.KisBean;
/**
*
* @author brucechen
*/
public class MainBean {
public static void main(String[] args){
KisBean testBean = new KisBean();
System.out.println(testBean.toString());
Logger log = Logger.getRootLogger();
PropertyConfigurator.configure("src/log4j.properties");
log.warn("there are some properties is null") ;
testBean.setId("testid");
testBean.setName("testName");
testBean.setNickname("testnickname");
System.out.println(testBean.toString());
}
}
3.最后是Log4j的配置文件,这里选用properties文件方式进行配置,简单直接
log4j.rootLogger = INFO,FirstAppender,SecondAppender
log4j.appender.FirstAppender = org.apache.log4j.ConsoleAppender
log4j.appender.FirstAppender.Threshold = INFO
log4j.appender.FirstAppender.ImmediateFlush = true
log4j.appender.FirstAppender.Target = System.out
log4j.appender.FirstAppender.layout = org.apache.log4j.PatternLayout
log4j.appender.FirstAppender.layout.ConversionPattern = [test] %p - %d{yyyy-MMM-dd HH:mm:ss} - %c - %l
log4j.appender.SecondAppender = org.apache.log4j.FileAppender
log4j.appender.SecondAppender.Threshold = WARN
log4j.appender.SecondAppender.ImmediateFlush = true
log4j.appender.SecondAppender.File = d:/test.html
log4j.appender.SecondAppender.Append = true
log4j.appender.SecondAppender.layout = org.apache.log4j.HTMLLayout
log4j.appender.SecondAppender.layout.ConversionPattern = [test] %p - %d{yyyy-MMM-dd HH:mm:ss} - %c - %l
4.下面是各文件的组织方式
基本使用方式已经具备,参照上一片转载博文即可。