log4j是用来做日志的
主要有三个对象 logger appender layout
1.配置根对象:
log4j.rootLogger=DEBUG, appender1, appender2
其中DEBUG为日志级别:按照等级排序: DEBUG,INFO,WARN,ERROR。主要这四种
appender1,appender2为日志的输出目的地的声明
2.配置日志的输出目的地
log4j.appender.appender1=org.apache.log4j.ConsoleAppender
指明appender1的目的地为控制台:其中输出目的地常用的包括以下几种:
控制台:org.apache.log4j.ConsoleAppender
文件: org.apache.log4j.FileAppender
每天一个日志文件: org.apache.log4j.DailyRollingFileAppender
写入到流发送到任何地方: org.apache.log4j.WriterAppender
如果是文件:还可以指明文件属性
log4j.appender.appender1.File=xh.log
3.然后设置目的地的输出格式:
log4j.appender.appender1.layout=org.apache.log4j.PatternLaout
这句配置指明了输出目的地appender1的输出格式为自定义的,然后可以指明自定义格式
log4j.appender.appender1.layout.ConversionPattern=%5p %d %C %m%n
其中输出格式包括以下几种:
#以Html格式布局: org.apache.log4j.HTMLLayout
#以自定义布局: org.apache.log4j.PatternLayout
#包含日志信息的级别和信息字符串: org.apache.log4j.SimpleLayout
#包含日志产生时间、线程、类别信息:org.apache.log4j.TTCCLayout
其中自定义格式中的字母的含义:
#%m:输出代码指定的消息
#%p:输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
#%r:输出自应用启动到输出该log信息耗费的毫秒数
#%c:输出所属的类目录,即类全名
#%t:输出产生该日志事件的线程名
#%n:输出一个回车换行符
#%d:输出日志时间点的日志或时间:注意这个时间是带毫秒值得可以{yyyy-MM-dd HH:mm:ss}来设定
#%l:输出日志事件发生的位置,包括类目录,发生的线程,以及在代码中的行数。
############################下面介绍log4j输出到数据库######################
#配置根日志信息
log4j.rootLogger=DEBUG, database
#配置目的地为数据库
log4j.appender.database=org.apache.log4j.jdbc.JDBCAppender
#配置URL
log4j.appender.database.URL=jdbc:mysql://localhost:3306/log
log4j.appender.database.driver=com.mysql.jdbc.Driver
log4j.appender.database.user=root
log4j.appender.database.password=demo666**..
#配置sql语句
log4j.appender.database.sql=insert into logs values(‘%d{yyyy-MM-dd HH:mm:ss}‘, ‘%C‘, ‘%p‘, ‘%m‘)
#配置模板
log4j.appender.database.layout=org.apache.log4j.PatternLayout
原文:http://www.cnblogs.com/qc-xh/p/6246105.html