文档章节

AOP应用案例-异常处理

luck2014
 luck2014
发布于 2016/04/07 23:37
字数 524
阅读 103
收藏 3

异常处理,

 或许你已经在使用AOP的方式进行异常处理,但是可能并不知道这实际是对应一个很有趣的术语,叫做Fault Barrier.同样的,在接触这个术语之前爱念,我实际上已经将这个概念所阐述的理念应用于工作中,直到看到dev2dev网站上的一篇文章”Effective Java Exception ",才知道原来这种异常处理方式还对应这么一个有趣的术语,不过 ,在讲述之前,我们有不要回顾一下java异常处理的相关内容。。

 1.1.1  java异常处理

    异常处理是个很大的话题,限于篇幅,我们不肯能详细的讲述异常处理的方方面面。下面只是简单地回顾一下Java异常类型Fault Barrier 的概念

  Java不是最早也不是唯一使用异常处理的语言, 不过,Java在引入Checked Exception的基础上为其自身的异常处理添加了不少新意,我们先来看一下java中异常层次体系大体是什么样的结构,


在图11-1中,我们将异常类型分为以下两类,

#通常将java.lang.Error 和java.lang.RuntimeException及其子类称之为unchecked exception,之所以如此称呼,是因为编辑器不会对这些类型的异常进行编译期检查。因为java.lang.Error 我们通常关系不着,所以,狭义上将java。lang,.RuntimeException及其子类暂且称为unchecked exception 也是可以的。

# java.lang.Exception 及其子类,但除去java.lang.RuntimeException分支,统称为checked exception 。一旦程序的方法定义中声明了就会抛出“checked exception”,调用程序就必须对这些异常处理,而且编译器会在编译期间

会对这些异常进行检查。

在技术文章“Effective Java Exception "中,作者将unchecked Exception对应的情况称之为Fault,而将checked exception 对应的情况称之为Contingency,而Fault Battier要处理的就是对应Fault的情况,即unchecked Exception


© 著作权归作者所有

luck2014
粉丝 1
博文 9
码字总数 817
作品 0
广州
程序员
私信 提问
SpringAOP详细配置与使用

前言:本篇为复习总结之用,主要说明了下SpringAOP的概念,包含了Spring官方给的概念结合我自己的理解,配置其中包括了xml以及annotation方式。 SpringAOP简介: 面向切面编程(Aspect Orie...

菜鸟腾飞
01/05
0
0
[.NET领域驱动设计实战系列]专题九:DDD案例:网上书店AOP和站点地图的实现

原文:[.NET领域驱动设计实战系列]专题九:DDD案例:网上书店AOP和站点地图的实现 一、引言   在前面一专题介绍到,要让缓存生效还需要实现对AOP(面向切面编程)的支持。所以本专题将介绍了...

杰克.陈
2017/12/05
0
0
Spring AOP增强(Advice)

Sring AOP通过PointCut来指定在那些类的那些方法上织入横切逻辑,通过Advice来指定在切点上具体做什么事情。如方法前做什么,方法后做什么,抛出异常做什么。 再来看一下图 定义PointCut Sp...

艾贺521
2018/07/02
0
0
Spring基础知识——AOP

● AOP是什么 原文:http://wayfarer.cnblogs.com/articles/241024.html 3.1.1 概览 AOP(Aspect-Oriented Programming,面向切面编程),可以说是OOP(Object-Oriented Programing,面向对象......

littleant2
2016/01/06
124
0
3幅图让你了解Spring AOP

AOP(Aspect Oriented Programming),是面向切面编程的技术。AOP基于IoC基础,是对OOP的有益补充。 AOP之所以能得到广泛认可,主要是因为它将应用系统拆分分了2个部分:核心业务逻辑(Core bu...

白志华
2015/10/18
30
0

没有更多内容

加载失败,请刷新页面

加载更多

代理模式之JDK动态代理 — “JDK Dynamic Proxy“

动态代理的原理是什么? 所谓的动态代理,他是一个代理机制,代理机制可以看作是对调用目标的一个包装,这样我们对目标代码的调用不是直接发生的,而是通过代理完成,通过代理可以有效的让调...

code-ortaerc
今天
5
0
学习记录(day05-标签操作、属性绑定、语句控制、数据绑定、事件绑定、案例用户登录)

[TOC] 1.1.1标签操作v-text&v-html v-text:会把data中绑定的数据值原样输出。 v-html:会把data中值输出,且会自动解析html代码 <!--可以将指定的内容显示到标签体中--><标签 v-text=""></......

庭前云落
今天
8
0
VMware vSphere的两种RDM磁盘

在VMware vSphere vCenter中创建虚拟机时,可以添加一种叫RDM的磁盘。 RDM - Raw Device Mapping,原始设备映射,那么,RDM磁盘是不是就可以称作为“原始设备映射磁盘”呢?这也是一种可以热...

大别阿郎
今天
12
0
【AngularJS学习笔记】02 小杂烩及学习总结

本文转载于:专业的前端网站☞【AngularJS学习笔记】02 小杂烩及学习总结 表格示例 <div ng-app="myApp" ng-controller="customersCtrl"> <table> <tr ng-repeat="x in names | orderBy ......

前端老手
昨天
16
0
Linux 内核的五大创新

在科技行业,创新这个词几乎和革命一样到处泛滥,所以很难将那些夸张的东西与真正令人振奋的东西区分开来。Linux内核被称为创新,但它又被称为现代计算中最大的奇迹,一个微观世界中的庞然大...

阮鹏
昨天
20
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部