Red de conocimiento de abogados - Derecho de sociedades - Spring ya implementó aop, ¿por qué deberíamos usar "aspectj"?

Spring ya implementó aop, ¿por qué deberíamos usar "aspectj"?

Según tengo entendido por los documentos oficiales de Spring (no es de extrañar, esta es la respuesta más correcta):

①¿Elegir AOP o AspectJ de Spring?

De hecho, Spring es Tener su propio AOP. La función es básicamente suficiente, a menos que desee realizar proxy dinámicamente en la interfaz o interceptar métodos con precisión para captadores y definidores. Estos son requisitos para escribir rarezas y generalmente no se utilizan.

②Cuando usas AOP, ¿usas xml o anotación (@Aspect)?

1) Si utiliza el método xml, no se requiere ningún paquete jar adicional.

2) Si usas el método @Aspect, puedes agregar directamente @Aspect a la clase sin tener que preocuparte por configurarlo en xml. Pero esto requiere un paquete jar adicional (aspectjweaver.jar). Debido a que Spring usa directamente la función de anotación de AspectJ, tenga en cuenta que solo usa su función de anotación. ¡No es una función central! ! !

Me di cuenta de que hay una frase interesante en el documento: ¿El documento dice si elegir Spring AOP o usar Full AspectJ?

¿Qué es el aspecto completo? Si utiliza "aspecto completo J". Es decir, puedes implementar proxies dinámicos basados ​​en interfaces y otras funciones potentes. ¡No solo la función-función-explicación-anotación de aspectoj! ! !

Si utilizas AspectJ completo. Por ejemplo, el método Load-Time Weaving también requiere un paquete jar adicional spring-instrument.jar

Por supuesto, ya sea que esté usando spring aop o aspectoj, necesita aspectojweaver.jar spring-aop.jar. .