Java面试-Aspect

6.2、什么是 Aspect?

aspect pointcount advice 组成, 它既包含了横切逻辑的定义, 也包 括了连接点的定义. Spring AOP 就是负责实施切面的框架, 它将切面所定义的横 切逻辑编织到切面所指定的连接点中. AOP 的工作重心在于如何将增强编织目标 对象的连接点上, 这里包含两个工作:

1、如何通过 pointcut 和 advice 定位到特定的 joinpoint 上 2、如何在 advice 中编写切面代码.

可以简单地认为, 使用 @Aspect 注解的类就是切面. 6.3、什么是切点(JoinPoint)

程序运行中的一些时间点, 例如一个方法的执行, 或者是一个异常的处理. 在 Spring AOP 中, join point 总是方法的执行点。

6.4、什么是通知(Advice)?

特定 JoinPoint 处的 Aspect 所采取的动作称为 Advice。Spring AOP 使用一 个 Advice 作为拦截器,在 JoinPoint “周围”维护一系列的拦截器

6.5、有哪些类型的通知(Advice)?

Before - 这些类型的 Advice 在 joinpoint 方法之前执行,并使用 @Before 注解标记进行配置。

After Returning - 这些类型的 Advice 在连接点方法正常执行后执 行,并使用@AfterReturning 注解标记进行配置。

After Throwing - 这些类型的 Advice 仅在 joinpoint 方法通过抛出 异常退出并使用 @AfterThrowing 注解标记配置时执行。

After (finally) - 这些类型的 Advice 在连接点方法之后执行,无论方 法退出是正常还是异常返回,并使用 @After 注解标记进行配置。

Around - 这些类型的 Advice 在连接点之前和之后执行,并使用 @Around 注解标记进行配置。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章