### direct log messages to stdout ###
log4j.rootLogger=warn, stdoutlog4j.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

 
-------------------------------------------------------------------------------------------
////////打印日志信息//////////
Logger rootLogger = Logger.getRootLogger();
//Logger rootLogger = Logger.getLogger(this.getClass());
//BasicConfigurator.configure();
PropertyConfigurator.configure("log4j.properties");

rootLogger.debug("This is a log message from the " +
rootLogger.getName());
rootLogger.info("This is a log message from the " +
rootLogger.getName());
rootLogger.warn("This is a log message from the " +
rootLogger.getName());
rootLogger.error("This is a log message from the " +
rootLogger.getName());
rootLogger.fatal("This is a log message from the " +
rootLogger.getName());

//////////////////  -------------------------------------------------------------------------------------------
log4j:ERROR Could not read configuration file [log4j.properties].
java.io.FileNotFoundException: log4j.properties (系统找不到指定的文件。)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:306)
at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:324)
at mshanfeng.action.LoginAction.execute(LoginAction.java:64)
at org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:106)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
log4j:ERROR Ignoring configuration file [log4j.properties].
15:51:02,953  WARN root:70 - This is a log message from the root
343610 [http-8000-1] WARN root  - This is a log message from the root
15:51:02,953 ERROR root:72 - This is a log message from the root
343610 [http-8000-1] ERROR root  - This is a log message from the root
15:51:02,953 FATAL root:74 - This is a log message from the root
343610 [http-8000-1] FATAL root  - This is a log message from the root