简单的JavaEE异常处理机制

首先,当DAO层Catch到SQL异常,应该让相应的事务回滚,并继续抛出该异常

conn.rollback();

throw e;

在方法声明时throws这个异常;

第二,在Service层调用到Dao层时,try catch这个异常,在catch住中把它处理为RuntimeException异常;

处理过程是:自定义一个继承自RuntimeException的异常类AppRuntimeException;

catch(){

new AppRuntimeException();

}

第三,在Servlet中使用配置文件web.xml注册这个Exception,或者注册为RuntimeException,调用Service时,如果发生这个异常,则会跳转到相关的友好的面向用户的错误页面;

注意:如果页面未转向,则可能是反射过程中抛出的其他异常截获了我们自定义的这个RuntimeException,我们可以在这个异常中做出处理,让它转换为我们自定义的RuntimeException;

第四,以上我们只是简单的处理了异常,一般正常的与业务相关的异常;

时间: 2024-10-06 03:05:41

简单的JavaEE异常处理机制的相关文章

JAVA【异常二】异常处理机制

Java中异常提供了一种识别及响应错误情况的一致性机制,有效地异常处理能使程序更加健壮.易于调试.异常之所以是一种强大的调试手段,在于其回答了以下三个问题: 什么出了错? 在哪出的错? 为什么出错? 在有效使用异常的情况下,异常类型回答了"什么"被抛出,异常堆栈跟踪回答了"在哪"抛出,异常信息回答了"为什么"会抛出.   在Java 应用程序中,异常处理机制为:抛出异常,捕捉异常. 抛出异常:当一个方法出现错误引发异常时,方法创建异常对象并交付运

C#异常处理机制初步

异常处理 今天学习了C#的异常处理机制,现将所学总结如下: 一.C#的异常处理所用到关键字 try 用于检查发生的异常,并帮助发送任何可能的异常. catch 以控制权更大的方式处理错误,可以有多个catch子句. finally 无论是否引发了异常,finally的代码块都将被执行. throw 用于引发异常,可引发预定义异常和自定义异常. 二.C#异常处理的格式 try { 程序代码块: } catch(Exception e) { 异常处理代码块: } finally { 无论是否发生异常

Java异常处理机制

异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的.比如说,你用System.out.println(5/0),那么你是因为你用0做了除数,会抛出java.lang.ArithmeticException的异常. 有些异常需要做处理,有些则不需要捕获处理,在下面会详细讲到. 天有不测之风云,人有旦夕祸福,Java的程序代码也如此.在编程过程中,首先应当尽可能去避免错误和异常发生,对于不可避免.不可预测的情况则应考虑异常发生时如何处理. 而在Java中的异常用对象来表示

为你的网站定制一套统一的异常处理机制

写过程序的人都知道,再好的程序都可能存在未能处理的异常情况,因为程序运行的环境和人员的操作方式可以说是千差万别,开发人员在一开始很难把所有的情况都想到,并做相应的处理.所以,开发人员才需要配合测试人员进行协同工作,目的就是尽量较少和消灭(完全消灭当然只是理想情况了)程序中的错误,处理尽可能多的异常情况.在各种应用程序中,网站面临的挑战可以说是各类程序中比较大的了.为什么这么说呢?原因很简单,一个网站的用户千差万别,用户习惯各不相同,用户所使用的电脑和软件平台也各异,网络环境更是大相径庭,所以网站

深入理解java异常处理机制

 1. 引子        try-catch-finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解.不过,我亲自体验的"教训"告诉我,这个东西可不是想象中的那么简单.听话.不信?那你看看下面的代码,"猜猜"它执行后的结果会是什么?不要往后看答案.也不许执行代码看真正答案哦.如果你的答案是正确,那么这篇文章你就不用浪费时间看啦. <span style="background-color: rgb(255, 

Struts2异常处理机制

任何成熟的MVC框架都应该提供成就的异常处理机制,Strut2也不例外.Struts2提供了一种声明式的异常处理方式,Struts2也是通过配置的拦截器来实现异常处理机制的. 一.  异常处理机制1. 配置 Struts2的异常处理机制是:通过在struts.xml文件中配置﹤exception-mapping -﹥元素完成的,配置该元素时,需要指定两个属性: exception:此属性指定该异常映射所设置的异常类型. result:此属性指定Action出现该异常时,系统转入result属性所

Java Web项目整体异常处理机制

在实际的j2ee项目中,系统内部难免会出现一些异常,如果把异常放任不管直接打印到浏览器可能会让用户感觉莫名其妙,也有可能让某些用户找到破解系统的方法. 出来工作一年时间了,我也大概对异常处理有了一些了解,在这呢小弟简单介绍下个人对异常处理的见解,抛砖引玉,希望各位大神提出宝贵的意见和建议. 就拿spring+struts2+hibernate项目说明:通常一个页面请求到后台以后,首先是到action(也就是所谓mvc的 controller),在action层会调用业务逻辑service,ser

Jersey框架的统一异常处理机制分析_java

一.背景 写这边文章源于有朋友问过java中的checked exception和unchecked exception有啥区别,当时我对其的回答是:我编程时仅用RuntimeException.其实,我说句话我是有前提的,确切的应该这么说:在成熟的开发框架下编写业务代码,我只使用或关注RuntimeException.因为,由于框架往往将异常的处理统一封装,这样以便程序员更好的关注业务代码,而业务的一些错误通常是在系统运行期间发生的,因此业务的异常通常被设计为RuntimeException的

深入对比数据科学工具箱:Python和R的异常处理机制

概述 异常处理,是编程语言或计算机硬件里的一种机制,用于处理软件或信息系统中出现的异常状况(即超出程序正常执行流程的某些特殊条件).Python和R作为一门编程语言自然也是有各自的异常处理机制的,异常处理机制在代码编写中扮演着非常关键的角色,却又是许多人容易混淆的地方.对于异常机制的合理运用是直接关系到码农饭碗的事情!所以,本文将具体介绍一下Python和R的异常处理机制,阐明二者在异常处理机制上的异同. 异常安全 在了解Python和R的异常机制之前,我们有必要了解一下异常安全的概念. 根据W