If you use an interface-based proxy (default), Spring uses the Proxy
class to create proxies dynamically and in memory. There is no .class
file associated with this class.
When using proxy classes (via cglib ), Spring creates specific subclasses of your classes. In the debugger, you will notice that they are called something like YourRealService$$EnhancerByCGLIB$$...
But again, these classes are only generated in memory and are not stored on disk.
If you really want to see AOP under the hood, you will need to use aspectj and compile time. Too much work. So bottom line: just trust, they work. And if they do not: examine the stack traces.
source share