把这个归于Struts2是不太合适的,因为log4j是一个开源的代码项目,不仅仅可以用在Struts2上。
我们介绍一下log4j:通过使用log4j,我们可以把一些信息输出到控制台、文本文件、html文件等等中
首先,创建一个java project,我们建立一个lib目录,然后把log4j-1.2.15.jar或者其它版本的包引入进来并添加到path中去。
然后,我们定义一个简单的逻辑类UserDao.java
package cn.com; import org.apache.log4j.Logger; public class UserDao { public static final Logger logger = Logger.getLogger(UserDao.class); public void add(){ logger.debug("这是debug级别"); logger.info("这是info级别"); logger.warn("这是warn级别"); logger.error("这是error级别"); logger.fatal("这是fatal级别"); } }可以看到,在代码中,我们首先是创建了一个Logger对象,并且添加要输出日志的类
然后,在src目录下创建:log4j.properties
log4j.appender.stout=org.apache.log4j.ConsoleAppender log4j.appender.stout.layout=org.apache.log4j.PatternLayout log4j.appender.stout.layout.ConversionPattern=[%p][%l]-->%m(%d)%n log4j.rootLogger=DEBUG,stout
1、导入包 2、创建Logger对象 //public static final Logger logger = Logger.getLogger(UserDao.class); 3、编写相应的日志 /**可以为日志设置不同的级别,在log4j中: debug<info<warn<error<fatal **/ logger.debug("这是debug级别"); logger.info("这是info级别"); logger.warn("这是warn级别"); logger.error("这是error级别"); logger.fatal("这是fatal级别"); 4、编写日志的配置文件,以此说明日志的显示方式和级别(在src目录下创建log4j.properties文件) 4、1 首先创建Append log4j.appender.stout=org.apache.log4j.ConsoleAppender 4、2 说明展示的布局 log4j.appender.stout.layout=org.apache.log4j.PatternLayout 说明用哪种布局进行展示,常用的是PatternLayout来展示 4、3 说明通过什么样的格式来完成展示 log4j.appender.stout.layout.ConversionPattern==[%p][%l]-->%m(%d) 使用的格式是[什么级别的日志][日志的发生地]-->日志信息(日志时间) 5、在什么时候输出日志 log4j.rootLogger=DEBUG,stout rootLogger是根目录的Logger,每一个项目的classpath就是根目录,只要运行到输出日志的位置,并且日志的级别大于DEBUG,就会输出
package cn.junit; import cn.com.UserDao; public class TestLog { public static void main(String[] args) { UserDao u = new UserDao(); u.add(); } }运行这个类的main函数,控制台就会打印出相应的日志信息
【SSH三大框架】Struts2基础第七篇:log4j打印出日志信息
原文:http://blog.csdn.net/u010800530/article/details/41083139