(十五)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.连接点

相关推荐
倔强的石头1061 分钟前
飞算JavaAI:重构软件开发范式的智能引擎
java·数据库·重构
Q_9709563918 分钟前
java+vue+SpringBoo足球社区管理系统(程序+数据库+报告+部署教程+答辩指导)
java·开发语言·数据库
要开心吖ZSH23 分钟前
微服务架构的演进:迈向云原生
java·微服务·云原生
为了更好的明天而战42 分钟前
Java 中的 ArrayList 和 LinkedList 区别详解(源码级理解)
java·开发语言
JosieBook1 小时前
【Java编程动手学】Java中的数组与集合
java·开发语言·python
夜阑卧听风吹雨,铁马冰河入梦来1 小时前
Spring AI 阿里巴巴学习
人工智能·学习·spring
N_NAN_N1 小时前
类图+案例+代码详解:软件设计模式----单例模式
java·单例模式·设计模式
weixin_399380691 小时前
k8s一键部署tongweb企业版7049m6(by why+lqw)
java·linux·运维·服务器·云原生·容器·kubernetes
lang201509282 小时前
Reactor ConnectableFlux支持多订阅者
java·网络
R-sz2 小时前
java流式计算 获取全量树形数据,非懒加载树,递归找儿
java·开发语言·windows