Aspect-Oriented Programming (AOP) helps us cut across many methods, objects and type within the application without embedding it in the business logic. With Spring AOP and AspectJ, you can add additional behaviour to existing code without modifying the code itself. -
View it on GitHub