【问题标题】:AOP implementationAOP 实现
【发布时间】:2011-09-20 09:29:45
【问题描述】:

拥有自己的基于 Java 的 Aspect-Oriented-Programming 实现的最佳方式是什么?

P.S.:可能的论点是使用 Spring AOP,但我有一个不是基于 Spring 的项目,并且必须采用这种方式(因此必须回退到我自己的实现)。

【问题讨论】:

  • 您使用什么语言/平台?
  • 那将是 Java。问题中也更新了。
  • 要自己实现吗?

标签: java aop


【解决方案1】:

尝试使用从接口生成的动态代理:

http://www.javaworld.com/javaworld/jw-11-2000/jw-1110-proxy.html

【讨论】:

    【解决方案2】:

    你可以使用 AspectJ 吗? (http://www.eclipse.org/aspectj/)

    【讨论】:

    • 好的,让我们从原始字节码操作开始......但要注意:它是一团糟! (您可以使用http://asm.ow2.org/ 帮助自己进行字节码操作)
    • 我正要推荐它。那我就没主意了。也许您唯一的选择是使用 Java 创建自己的编程语言,然后将 AOP 应用于该语言。
    【解决方案3】:

    如果您坚持不使用任何第三方库(我认为这通常是个坏主意),您可能会对 java.lang.reflect.Proxy 类感兴趣。 它可以用作实现面向方面框架的基础(很差,但总比没有好)。也许这足以满足您的需求。 祝你好运!

    【讨论】:

      猜你喜欢
      • 2011-07-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-13
      相关资源
      最近更新 更多