zoukankan      html  css  js  c++  java
  • spring AOP Capability and Goals

    还是先放官方文档(学习起点第一步)

    https://docs.spring.io/spring/docs/5.1.6.RELEASE/spring-framework-reference/core.html#aop-introduction-spring-defn

    Spring AOP是用纯Java实现的。不需要特殊的编译过程。Spring AOP不需要控制类加载器层次结构,因此适合在servlet容器或应用程序服务器中使用。

    Spring AOP目前仅支持方法执行连接点(建议在Spring bean上执行方法)。虽然可以在不破坏核心Spring AOP API的情况下添加对字段拦截的支持,但未实现字段拦截。如果您需要建议字段访问和更新连接点,请考虑使用AspectJ等语言。

    Spring AOP的AOP方法与大多数其他AOP框架的方法不同。目的不是提供最完整的AOP实现(尽管Spring AOP非常强大)。相反,目标是在AOP实现和Spring IoC之间提供紧密集成,以帮助解决企业应用程序中的常见问题。

    因此,例如,Spring Framework的AOP功能通常与Spring IoC容器一起使用。通过使用普通bean定义语法来配置方面(尽管这允许强大的“自动代理”功能)。这是与其他AOP实现的重要区别。使用Spring AOP无法轻松或高效地完成某些操作,例如建议非常细粒度的对象(通常是域对象)。在这种情况下,AspectJ是最佳选择。但是,我们的经验是Spring AOP为适合AOP的企业Java应用程序中的大多数问题提供了出色的解决方案。

    Spring AOP从未努力与AspectJ竞争,以提供全面的AOP解决方案。我们认为,基于代理的框架(如Spring AOP)和完整的框架(如AspectJ)都很有价值,而且它们是互补的,而不是竞争。Spring将Spring AOP和IoC与AspectJ无缝集成,以在一致的基于Spring的应用程序架构中实现AOP的所有使用。此集成不会影响Spring AOP API或AOP Alliance API。Spring AOP仍然向后兼容。

  • 相关阅读:
    Memcache安全配置
    Iptables DDOS/CC 自动屏蔽脚本
    php浮点数精确运算
    Relearning PHP (2) – php 的浮点数float
    mybatis分页插件PageHelper的使用(转)
    深入理解mybatis参数
    @Param注解在mybatis中的使用以及传入参数的几种方式(转)
    idea常用快捷键大全(转)
    @ModelAttribute注解的作用
    参数绑定
  • 原文地址:https://www.cnblogs.com/April315/p/10707245.html
Copyright © 2011-2022 走看看