java - 在控制台中记录信息--java

标签 java logging system.out

我有一个命令行应用程序,我的客户端需要命令行中的调试信息。我想使用 System.out.println 添加调试信息,如

System.out.println("message");

这是好的编程习惯吗?否则,什么是更好的选择?

最佳答案

使用日志框架代替System.out.println()

有多种用于 Java 项目的日志记录框架。 Log4J可能是最知名和最受欢迎的一个。我的第一选择是SLF4J ,它本身实际上不是一个日志框架,而是一个可以插入不同日志框架(例如 Log4J 或 Logback )的层。

标准 Java API 中还有一个标准日志记录框架,位于 java.util.logging 包中,但根据我的经验,它并不是很受欢迎。

使用日志框架而不是 System.out.println() 调用的优点是,您可以轻松地将日志配置为写入文件或其他存储而不是控制台,并且您可以使用不同的日志记录级别进行调试、警告和错误,并且可以选择想要获得的日志输出级别。

关于java - 在控制台中记录信息--java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16835590/

相关文章:

java - 锁定虚拟机内单个线程的文件

Java 区别 StdOut 与 System.out.println

java - JUnit4:以多种测试方法测试 System.out

java - 在一对多映射的条件下使用新的 JPA

java - 网络服务+安卓

java - 在fabric8 Kubernetes客户端events()API中,Watcher.Action指示什么?

C# 自定义记录器 - 捕获发送对象的最佳方法

java - 如何使用 Log4j 更改包的日志级别?

java - JBoss 4.3 运行旧版 Struts 应用程序,在日志文件中输出数十万个空行

java - 为什么我的 "While Loop"没有计算并打印出一个简单的 3N+1 方程?