System.out.print()不起作用,log4j仍然运行良好
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了System.out.print()不起作用,log4j仍然运行良好相关的知识,希望对你有一定的参考价值。
任何人都可以解释我的问题如下。
- 我的java Web应用程序使用org.apache.log4j.Logger库。
- 我输入了一个命令:log.info(“这是log4j输出”)
- 我把另一个命令如System.out.println(“这是系统输出”)
- 好的,我通过tomcat服务器部署Web应用程序。
现在,我跟踪登录catalina.out。我的问题:
在运行应用程序期间,显示“这是log4j输出”,但未显示“这是系统输出”。
这是log4j配置:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="true"
xmlns:log4j='http://jakarta.apache.org/log4j/'>
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern"
value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" />
</layout>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="console" />
</root>
</log4j:configuration>
我认为它们都将被显示(log4j输出和system.out)。
我不知道为什么。愿有人解释这个问题吗?
谢谢!
答案
System.out
打印到“标准输出”控制台。这可以是你的文本控制台,但它可以是任何东西,因为它可以很容易地配置到其他地方。
另一方面,可以将任何记录器库配置为记录到您想要的任何位置。
长话短说:很可能,这是由于您环境中的某些特定配置设置。但我们不知道您的设置,因此我们无法提供更具体的答案。
以上是关于System.out.print()不起作用,log4j仍然运行良好的主要内容,如果未能解决你的问题,请参考以下文章
使用 PreparedStatement 登录在 Java 中不起作用 [重复]
java中System.out.print()与System.out.println()与System.out.printf()的差别
JAVA中System.out.println和System.out.print有什么区别