(十五)JavaWeb后端开发——异常处理/AOP面向切面编程

目录

1.异常处理

2.AOP概述

3.AOP核心概念

4.AOP-通知类型

5.切入点表达式

6.连接点


1.异常处理

Web后端开发的三层架构是Controller调用Service,Service调用Mapper,如果碰到了异常就会逐级向上抛出,所以Java就在Controller层设计了全局异常处理器

2.AOP概述

AOP:Aspect Oriented Proqramming(面向切面编程、面向方面编程),其实就是面向特定方法编程,是一种编程思想,作用:在不惊动原始设计的基础(不改源代码)上为其进行功能增强(与代理类似)

Spring思想:无入侵式/无侵入式编程

AOP的典型应用场景还有:记录操作日志(谁在什么时候操作了代码)、权限控制、事务管理

AOP的优势:代码无侵入、减少重复代码、提高开发效率、维护方便

3.AOP核心概念

这些概念不需要死记硬背,眼熟即可

连接点是所有方法,切入点是需要执行通知的那些方法,有了切入点和通知并将它俩绑定就得到了切面(面向切面编程)

4.AOP-通知类型

  1. @Around:环绕通知,此注解标注的通知方法在目标方法前、后都被执行
  2. @Before:前置通知,此注解标注的通知方法在目标方法前被执行
  3. @After:后置通知,此注解标注的通知方法在目标方法后被执行,无论是否有异常都会执行
  4. @AfterReturning:返回后通知,此注解标注的通知方法在目标方法后被执行,有异常不会执行
  5. @AfterThrowing:异常后通知,此注解标注的通知方法发生异常后执行

5.切入点表达式

6.连接点

相关推荐
一头生产的驴5 分钟前
java整合itext pdf实现自定义PDF文件格式导出
java·spring boot·pdf·itextpdf
YuTaoShao11 分钟前
【LeetCode 热题 100】73. 矩阵置零——(解法二)空间复杂度 O(1)
java·算法·leetcode·矩阵
zzywxc78715 分钟前
AI 正在深度重构软件开发的底层逻辑和全生命周期,从技术演进、流程重构和未来趋势三个维度进行系统性分析
java·大数据·开发语言·人工智能·spring
YuTaoShao2 小时前
【LeetCode 热题 100】56. 合并区间——排序+遍历
java·算法·leetcode·职场和发展
程序员张32 小时前
SpringBoot计时一次请求耗时
java·spring boot·后端
llwszx5 小时前
深入理解Java锁原理(一):偏向锁的设计原理与性能优化
java·spring··偏向锁
云泽野6 小时前
【Java|集合类】list遍历的6种方式
java·python·list
二进制person7 小时前
Java SE--方法的使用
java·开发语言·算法
小阳拱白菜8 小时前
java异常学习
java
FrankYoou9 小时前
Jenkins 与 GitLab CI/CD 的核心对比
java·docker