我有一个命令行应用程序,我的客户端需要命令行中的调试信息。我想使用System.out.println
添加调试信息,如
System.out.println("message");
这是一个很好的编程习惯吗?否则,什么是更好的选择?
答案 0 :(得分:4)
使用日志框架而不是System.out.println()
。
有几个用于Java项目的日志框架。 Log4J可能是最知名和最受欢迎的。我的第一个选择是SLF4J,它实际上不是日志框架本身,而是您可以使用的一个层,您可以插入不同的日志框架(例如Log4J或Logback)。
标准Java API中还有一个标准的日志记录框架,在java.util.logging
包中,但根据我的经验,它并不是很受欢迎。
使用日志记录框架而不是System.out.println()
调用的优点是,您可以轻松地将日志记录配置为写入文件或其他存储而不是控制台,并且可以使用不同的日志记录级别进行调试,警告和错误,您可以选择要获得的日志输出级别。
答案 1 :(得分:0)
请查看此处接受的答案,了解为何不首选syso:Do not use System.out.println in server side code