以前在学习时,老师说过要处处理异常,把所的异常都抓住,处理掉,不要在后出现一大堆错误,
还有就是在测试时的 System.out.println();
这样的语句都不要,说是占空间内存, 可是现在和我一起做项目的同事,他根本就没处理过异常, 
   try { 
   
    } 
    catch(Exception ex)      {       ex.printStackTrace();   
  }就只有这段代码,每次出错误了,tomcat的黑窗下全是异常,
如果一直这们不用 log.error把ex.printStackTrace();   
换掉,再把异常处理后返回客户,会有什么问题,是占内存吗?
还是会出其它问题?

解决方案 »

  1.   

    调试期间,这么做没什么不好。
    交给客户的时候,还是转向写到日志里更好。
    另:tomcat等以服务形式运行,这些信息本身就是写到日志里面的。
    所以这个问题并不严重。
      

  2.   

    包装好你的异常类型,然后用log4j等组件记录下你的错误,然后用一些共通处理该异常类型比较好。
      

  3.   


    顶!!!
    我想这就是所谓的:Log an exception where you catch it, unless you plan to re-throw it. 
    如果你已得到她,就要好好了解她,除非你想抛弃她。 
      

  4.   

    出现异常后,以不同方式记录异常信息只是需要做的事情的一部分最重要的是对异常的处理,比如在catch到IOException的时候,你需要在异常出现的时候关闭之前打开的流,而不仅仅是e.printStackTrace()printStackTrace()也许能让你调试程序的时候方便一些但对程序的健壮性而言,一点作用也没
      

  5.   


    顶!!!我想这就是所谓的:If you can't handle an exception, don't catch it. 如果你不能好好对待她,不要骚扰她。 If you catch an exception, don't swallow it. 如果你已得到她,就要善待她。 
      

  6.   

    调试期间,这么做没什么不好。 
    交给客户的时候,还是转向写到日志里更好。 
    另:tomcat等以服务形式运行,这些信息本身就是写到日志里面的。 
    所以这个问题并不严重。