1.背景介绍、
我们在任务中会接触到Spring,而Spring最关键的两处就是IOC和AOP;今天我们不看IOC,只讲AOP。
2.知识剖析
什么是AOP?
面向切面编程(Aspect Oriented Programing,AOP)采用横向抽取机制,是面向对象编程(Object Oriented Programing,OOP)的补充和完善。
OOP引入封装、继承、多态等概念来建立一种对象层次结构,OOP允许开发者定义纵向的关系,但并不适合定义横向的关系,例如日志功能、权限管理、异常处理等,该类功能往往横向地散布在核心代码当中,这种散布在各处的无关代码被称为横切。
AOP恰是一种横切技术,解剖开封装对象的内部,将那些影响了多个类的公共行为封装到一个可重用???,并将其命名为Aspect(切面),所谓切面,简单的说就是那些与业务无关,却为业务??樗餐饔玫穆呒蛟鹑畏庾捌鹄?,便于减少系统的重复代码,降低??榧涞鸟詈隙龋⒂欣谖蠢吹目刹僮餍院涂晌ば?。
AOP能做什么?
AOP最常用的几种使用便是:声明式事务管理、权限校验和日志记录。本次放弃权限校验,仅介绍事务管理以及日志记录。
为什么放弃权限管理?
拦截器Interceptor,还有监听器,过滤器,这些都比SpringAOP好用。
至于具体如何使用SpringAOP配置事务以及管理日志,请移步~
PPT:https://ptteng.github.io/PPT/PPT-java/java-SpringAOP-task3.html#/
视频:
SpringAOP的介绍_腾讯视频