-
大家在做项目的时候对异常是怎么处理的5
1、原样抛出还是不抛出?
2、原样抛出还是转化为自定义的异常?
3、如果有多个异常是放到一个try...catch块里面还是放在多个?
4、如果有异常,例如:SQLException是抛出SQLException还是抛出Exception?
5、怎样抛出异常才是更合理的呢?2013年6月03日 13:55
4个答案 按时间排序 按投票排序
-
采纳的答案
第一条,抛还是不抛,取决于你现在处理还是暂时不处理。无论如何,出了异常掩盖掉总是不合适的吧 =,.=
第二条,取决于你的异常的用途,说实话,自定义exception,对于非web软件,工具类(比如框架之类),用的更多而且更有用。因为抛出的异常是要给上层程序员调用时判断,因此自定义exception更清晰。而web系统的话,当然也可以自定义各种exception,但是你有一百种理由和设计去规避掉自定义exception,毕竟上层已经没有人会去调用你的action类API(当然不是指的框架本身~)
第三点,能放到一起当然放到一起,分开放代码看起来反倒乱(其实try catch本身就是引起代码乱的祸首之一~~)
第四点,还是看你需求,你上层如果要对SQLException做特殊处理,包括为了页面上显示不同的句子,那就该是什么就是什么
第五点,包括上面4点但不仅限于~呵呵
很多项目里都有自己一套独特的exception体系,有的只有一个XXXexception类,通过自定义的errorCode去区分不同的错误信息,仁者见仁,智者见智2013年6月03日 16:45
-
1、原样抛出还是不抛出?
看是DAO层还是Service层抛出的,如果是DAO层抛出的你在Service层捕获的话最好把异常信息转化成相应的业务描述的异常。
2、原样抛出还是转化为自定义的异常?
目前的项目是自定义了一个通用的业务异常,方便国际化和记录日志。
3、如果有多个异常是放到一个try...catch块里面还是放在多个?
看实际情况啊
4、如果有异常,例如:SQLException是抛出SQLException还是抛出Exception?
如果是DAO层还是被另外一个DAO调用的话SQLException还是可以的,如果是你的上一抽象层中捕获这种异常则需要转化成当前抽象层中可以理解的异常。
5、怎样抛出异常才是更合理的呢?
如楼上一位老兄建议,参考effective java的关于异常的处理方式。
不管怎么处理吧,异常最终记录日志那是必须的,不管你是在哪一层记录,还是几层都记录。另外,自定义异常我一般都是运行时异常,那种强制别人需要处理的异常很少用,因为,一般情况下,抛出异常了,调用者还可以恢复操作的可能性很小。2013年6月03日 20:54
相关推荐
在J2EE项目开发中,异常处理是一项至关重要的任务,它确保了系统的稳定性和用户体验。一个良好的异常处理机制能够提供详细的错误信息,帮助开发者快速定位问题,并且可以在生产环境中优雅地处理异常,防止用户看到...
JAVA项目中异常处理是指在项目中如何进行异常处理,在最底层将异常往上传递,在页面中集中处理。同时可以自定义错误码。 异常处理机制 在JAVA项目中,异常处理机制是指在程序执行过程中出现错误或异常时,如何捕获...
《项目质量控制与检验异常处理》 在企业管理中,尤其是涉及到材料行业的项目实施,质量控制是确保产品和服务达到预期标准的关键环节。检验异常处理单是这一过程中不可或缺的工具,它用于记录、分析并解决在质量检验...
项目的开发中,不管是对底层的数据库操作过程,还是业务层的处理过程,还是控制层的处理过程,都不可避免会遇到各种可预知的、不可预知的异常需要处理。每个过程都单独处理异常,系统的代码耦合度高,工作量大且不好...
Java异常处理是编程中至关重要的一个环节,它确保了程序在遇到错误时能够优雅地运行,而不是突然崩溃。本实验报告“java实验报告4-异常...在实际项目中,良好的异常处理和日志记录习惯将极大地提高开发效率和软件质量。
“C与C++中的异常处理.pdf”可能会详细比较这两种语言的异常处理方式,并可能涵盖如何在C++中调用C库时处理异常,以及如何在混合C/C++项目中协调异常处理策略。这篇文章可能会讨论异常安全编程实践,包括异常不可见...
在编程世界中,异常处理是不可或缺的一部分,尤其是在大型项目中,确保程序的稳定性和健壮性至关重要。C# 作为一种面向对象的编程语言,提供了强大的异常处理机制,以优雅地处理程序运行时可能出现的错误。标题提到...
### J2EE项目异常处理的几种方案:深入探讨与实践 在J2EE项目中,异常处理是一项至关重要的任务,它直接关系到系统的稳定性和用户体验。本文将详细解析几种常用的异常处理方案,尤其是针对Struts2框架下的异常管理...
统一异常处理会区分前端是否ajax请求,自动返回json数据格式,要求开发人员在处理ajax请求时统一封装成一个对象返回,以符合代码统一规范。 此工程在idea环境编写,导入请自己新建工程手工复制代码导入。
易语言异常处理辅助模块是为了解决易语言自身在异常处理方面不足而设计的一个扩展工具。易语言,作为一款中国本土开发的编程语言,以其简洁的语法和易学性受到许多初学者和开发者喜爱。然而,它在异常处理机制上的...
Java 异常处理机制及其在项目中的应用 Java 异常处理机制是 Java 语言中的一种错误捕获机制,用于处理程序中的错误和异常。Java 异常处理机制可以分为两大类:Checked Exception 和 Unchecked Exception。Checked ...
在Java项目开发中,全局异常处理是至关重要的一个环节,它确保了程序在遇到未预期错误时能够优雅地处理并提供有用的反馈。本教程将深入探讨如何在Java项目中实现全面且高效的异常处理策略,结合实战案例和源码分析,...
Java异常处理是编程过程中的重要组成部分,它提供了一种机制来捕获并处理程序运行时可能出现的错误。在Java中,异常是一种事件,通常由不正常的条件...在实际项目中,良好的异常处理策略是确保软件质量的关键因素之一。
Java项目中的异常问题,统一自己写异常的类进行处理。
总的来说,VB.NET全局错误和异常处理涉及对`AppDomain.UnhandledException`和`Application.ThreadException`事件的订阅,以及如何在这些事件处理器中执行适当的错误恢复策略。通过正确实施全局错误处理,开发者可以...
在IT行业中,异常处理是系统稳定性和健壮性的重要组成部分,尤其是在使用Spring Boot进行Web开发时。本项目“业务异常提示处理 springboot+Assert(自定义断言)”着重于利用Spring Boot的特性来构建高效、易维护的...
在Android应用开发中,异常处理是一项至关重要的任务,它确保了程序在遇到错误时能够以适当的方式响应,而不是突然崩溃。本项目聚焦于如何在Android应用程序中有效地捕获异常,并将其上传到Bugly这一第三方错误追踪...
全局异常处理是软件开发中的一个重要概念,特别是在大型项目或复杂系统中,确保程序在遇到错误时能够优雅地处理并提供反馈至关重要。这篇文章将深入探讨全局异常处理的实现,包括其重要性、常见方法以及如何在不同...
在IT行业的项目施工管理中,顾客财产异常处理单是一个至关重要的文档,主要用于记录和管理在项目执行过程中出现的与客户财产相关的任何问题。这个表格是企业管理中的一个关键工具,特别是对于涉及材料供应和服务的...
项目中出现的异常通常要用一个友好的异常页面来显示,通过对struts2.xml的配置能拦截全局异常,只要出现异常就会转向异常页面。