- 切面【每个事务都是一个切面】
数据库的事务贯穿整个代码层,这就是一个切面,它可以定义后面要介绍的各类通知、切点、和引入的内容,然后SpringAOP会将其内容织入到流程中,在动态代理中把他们理解成一个拦截器。 - 通知
前置通知:在动态代理反射原有对象方法或执行环绕通知 – 前执行通知功能
后置通知
异常通知
返回通知
环绕通知
before around after afterReturning afterThrowing - 引入:允许我们在现有类里添加自定义的类和方法
- 切点:告诉aop什么时候启动拦截并织入,通过正则表达式限定
- 连接点:通过切点的正则表达式去判断是不是连接点,如果是织入对应通知
- 织入:生成代理对象并将切面内容放到流程中的过程。
Spring对aop的支撑:
1.proxyFactoryBean
2.xml配置aop
3.使用@AspectJ
4.AspectJ注入切面