使用log4j主要是为了记录错误日志,以便检查错误的时候知道程序到底都发生了哪些错误。
首先引入log4j的jar包,然后配置log4j.properties, 在log4j.properties理可以配置错误信息的级别,有info、error、warn和debug, debug的级别最低,如果把错误信息的级别设置成了debug,就表示无论有什么信息都打印,如果是设置成error则表示有错误发生时才打印日志,例如我的log4j.properties的配置为:
log4j.rootCategory=INFO, stdout,logfile
log4j.rootLogger=info, stdout,logfile
log4j.logger.org.springframework.oxm=DEBUG
log4j.logger.org.hibernate.test=info
log4j.logger.org.hibernate.tool.hbm2ddl=debug
log4j.logger.org.hibernate.hql.ast.QueryTranslatorImpl=trace
log4j.logger.org.hibernate.hql.ast.HqlSqlWalker=trace
log4j.logger.org.hibernate.hql.ast.SqlGenerator=trace
log4j.logger.org.hibernate.hql.ast.AST=trace
log4j.logger.org.hibernate.type.descriptor.sql.BasicBinder=trace
log4j.logger.org.hibernate.type.BasicTypeRegistry=trace
# OpenSymphony Stuff
log4j.logger.com.opensymphony=INFO
log4j.logger.org.apache.struts2=DEBUG
# Spring Stuff
log4j.logger.org.springframework=INFO
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}\:%L - %m%n
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.File=D:/logs/error.log
log4j.appender.file.DatePattern='-'yyyy-MM-dd'.log'
log4j.appender.logfile.Append=true
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
我的错误级别设置为了info,打印信息打印到文件和控制台