Java代码故障排除:鱼和熊掌不可兼得

日期: 2013-03-24 作者:Lukas Stewart翻译:蒋红冰 来源:TechTarget中国 英文

日志和异常处理就像是一个模子刻出来的一样。当你的Java代码中出现问题时,这通常意味着你有了异常需要处理,当然,任何时候当错误或意外事件发生里,那么此事件应该适当地记录下来。

  一旦在Java中执行异常处理,实际上有开发人员在处理里有两个选择:

  1.当异常从错误中抛出或恢复时,伴随着它的发展,处理它
  2.重新抛出异常,那么应用程序的另一部分就可以处理此问题

  在分层的应用程序,2这个选择是相当常见的,通常在执行堆栈的顶部只有一个层,是专门为了任务性理和从异常恢复而设计的。因此看分层应用不断地生重抛出异常,一直到它们充满到了顶部,这是很常见的。这是一个非常有效的策略。

  然而,开发人员最常犯的错误是在异常抛出之前进行日志记录。这种做法必须被视为反模式的最高位。

  异常应该在处理之后记录,而且只能是在他们处理之后。毫无疑问,在每一个catch块中记录异常的工作都是要有目的的,但是这样做会使得追踪异常和解决问题成为真正的恶梦。异常最终会在多个层中被多次记录,而且当质量工程师通过日志文件开始追踪时,他们会有一个艰难的经历,故障检修人员不知道从哪里下手,也不知道什么进修才能完成。

  问题很大,但它很容易解决。解决方法是?要习惯当异常解决以后再记录。把异常日志放到一个地方、一个文件放在应用程序的一个层上。这会使得企业应用轻松找到故障,也会使这些问题容易维护。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

翻译

蒋红冰
蒋红冰

TechTarget云计算主编,主要负责云计算和虚拟化网站的内容建设。长期专注于IT前沿技术,对云计算、虚拟化、人工智能、区块链等技术都有了解;对行业趋势、市场动态有一定的洞察。

相关推荐