Trong Spring AOP (Aspect-Oriented Programming), Aspect
, Advice
, Pointcut
, và JoinPoint
là những khái niệm cơ bản được sử dụng để xác định và quản lý các mối quan tâm chéo cắt (cross-cutting concerns) trong ứng dụng. Dưới đây là giải thích chi tiết về mỗi khái niệm:
Aspect
- Aspect: Là một module của mã nguồn chứa các mối quan tâm chéo cắt của ứng dụng. Trong Spring AOP, một aspect có thể được định nghĩa bằng cách sử dụng annotation
@Aspect
. Aspect chứa các advice và có thể chứa các pointcut.
Advice
- Advice: Là một hành động được thực hiện bởi một aspect tại một điểm cắt nhất định. Có nhiều loại advice, bao gồm:
- Before: Chạy trước join point.
- After Returning: Chạy sau khi join point hoàn thành mà không có lỗi.
- After Throwing: Chạy nếu join point ném ra ngoại lệ.
- After (finally): Chạy sau join point, bất...