84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
在代码中写了大量println语句,不过在服务器上部署时觉得打印语句浪费时间,请问有没有方法解决这个问题?
小伙看你根骨奇佳,潜力无限,来学PHP伐。
推荐使用已有的日志类轮子slf4jlogbacklog4j等等。
slf4j
logback
log4j
或者根据你当前的需求,你定义一个自己的输出工具类
public class Out { //DEBUG来控制是否为调试模式 private static final boolean DEBUG = true; public static void println(String str){ if(DEBUG){ System.out.println(str); } } }
项目里打印的时候使用
Out.println(str);
替换原来的System.out.println(str);
这一就可以做到最简单的sout输出控制了
你不用日志组件的么?记录日志是很有必要的,推荐使用logback组件,相对性能高点,另外,println也不会浪费多少时间,不会构成你的瓶颈
如果这个代码是你自己的代码,老老实实用log4j日志组件完成替换;
如果这个代码在工程依赖的jar包中,可以使用asm在ClassLoader加载类的时候进行System.out.println();代码的统一清理。
希望这个代码是你自己的代码,哈哈
System.out.println确实会浪费时间的,研究生时期做算法,用Java实现的算法,有print的时候明显比较慢,不过是毫秒级别的罢了。
建议还是换成日志组件logback, log4j之类的,省心看着还高端大气。
把他们都批量修改了不就好了吗?
推荐使用已有的日志类轮子
slf4j
logback
log4j
等等。
或者根据你当前的需求,你定义一个自己的输出工具类
项目里打印的时候使用
Out.println(str);
替换原来的System.out.println(str);
这一就可以做到最简单的sout输出控制了
你不用日志组件的么?记录日志是很有必要的,推荐使用logback组件,相对性能高点,另外,println也不会浪费多少时间,不会构成你的瓶颈
如果这个代码是你自己的代码,老老实实用log4j日志组件完成替换;
如果这个代码在工程依赖的jar包中,可以使用asm在ClassLoader加载类的时候进行System.out.println();代码的统一清理。
希望这个代码是你自己的代码,哈哈
System.out.println确实会浪费时间的,研究生时期做算法,用Java实现的算法,有print的时候明显比较慢,不过是毫秒级别的罢了。
建议还是换成日志组件logback, log4j之类的,省心看着还高端大气。
把他们都批量修改了不就好了吗?