The Weaving Period of aop

  • Compile Time: Slices are woven into the target class at compile time. This approach requires a special compiler. AspectJ’s weaving compiler weaves slices in this way.

  • Class Loading Period: Cut planes are woven into the JVM when the target class is loaded. This method requires a special ClassLoader, which can enhance the bytecode of the target class before it is introduced into the application. The load-time weaving (LTW) of AspectJ 5 supports weaving cut planes in this way.

  • Run-time: Cut planes are woven in at a certain time when the application is running. In general, AOP container will dynamically create a proxy object for the target object when weaving the tangent plane. Spring AOP is woven in this way