AOP Advice Types:-
Based on the execution strategy of advices, they are some following types.
1 Before Advice: These advices runs before the execution of join point
methods. We can use @Before annotation to mark an advice type as Before
advice.
2 After (finally) Advice: An advice that gets executed after the join point method finishes executing, whether normally or by throwing an exception. We can create after advice using @After annotation.
3 After Returning Advice: Sometimes we want advice methods
to execute only if the join point method executes normally. We can use @AfterReturning
annotation to mark a method as after returning advice.
4 After Throwing Advice: This advice gets executed only when join point
method throws exception, we can use it to rollback the transaction
declaratively. We use @AfterThrowing annotation for this type of advice.
5 Around Advice: This is the most important and powerful advice. This advice surrounds the join point method and we can also choose whether to execute the join point method or not. We can write advice code that gets executed before and after the execution of the join point method. It is the responsibility of around advice to invoke the join point method and return values if the method is returning something. We use @Around annotation to create around advice methods.