Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何通过记录器替换System.out或System.err的使用?_Java_Logging_Println_System.out - Fatal编程技术网

Java 如何通过记录器替换System.out或System.err的使用?

Java 如何通过记录器替换System.out或System.err的使用?,java,logging,println,system.out,Java,Logging,Println,System.out,我有一个简单的if条件,在这个条件下我使用System.out.println。 我想知道如何修改代码,以替换记录器使用的system.out if(myVar.getDate().equals(20141127) && myVar.getNumber().equals(1)) { System.out.println(""); } 有什么建议吗 谢谢您可以使用一些记录器实用程序来记录详细信息 看看 日志记录非常简单 log.debug("Thi

我有一个简单的
if
条件,在这个条件下我使用
System.out.println
。 我想知道如何修改代码,以替换记录器使用的
system.out

if(myVar.getDate().equals(20141127) && myVar.getNumber().equals(1)) {
                System.out.println("");
}
有什么建议吗


谢谢

您可以使用一些记录器实用程序来记录详细信息

看看

日志记录非常简单

log.debug("This is an debug message");
其中log是logger的一个实例


对于示例代码,您可以查看此

查看
log4j
您是否正在查找
System#setOut
System#setErr
@SubhrajyotiMajumder,我不确定我是否理解您的评论。短期内,您可以将System.out和System.err的输出重定向到一个文件,该文件将成为您的日志文件。然后,您可以开始执行一项任务,用Log4J或SLF4J调用替换这些调用,这将允许您在不同级别登录。甚至可以查看AOP来为您添加登录。例如:
System.setOut(newprintstream(newfileoutputstream(“file.txt”))
我应该在
if
条件之外还是在内部创建我的记录器?@hacks4life您能看看我提到的教程吗。我对答案做了修改。我无法获取
getLogger()
方法中的内容。我应该在里面放什么?我自己的班级对吗?@hacks4life是的,把你的班级名字放在那里。这意味着记录器是特定于您的类的。内置了一个简单明了的记录器(从Java 7开始):假设您从中记录日志的类名为“LoggingExample”,请执行以下操作:
logger logger=logger.getLogger(LoggingExample.class.getSimpleName());logger.log(Level.INFO,“消息到日志”)您将需要以下导入(一些IDE可以自动导入):
导入java.util.logging.Level;导入java.util.logging.Logger