2010-06-15 88 views
8

我一直在用Spring Roo运行我自己的一些实验,它似乎很酷,但我注意到这个工具在模型层上大量使用AOP。Spring Roo和面向方面的编程

我想创建一个使用袋鼠和我想知道的是一个真实的项目:

  • 为什么AOP是无处不在?这可以吗?
  • 这种方法的优点和缺点是什么?

我很新的面向方面的编程和一些指导将不胜感激。

回答

2

Spring框架具有广泛的AOP功能,在基于Roo的应用程序中使用它们是有意义的。 AOP允许您在业务逻辑和系统逻辑之间做出很好的清晰分离。正确完成后,您将获得更易于维护和易于理解的代码库。

缺点是性能低下,但不足以让我担心它。

要了解有关Spring和AOP的更多信息,请查看docs。 Spring使用AOP来处理事务管理和异步操作。

编辑:正如@edine正确地指出,AOP是编译时编织的,所以通常的AOP性能命中不适用。

2

我认为,在Spring ROO的情况下不会有性能问题。由于它使用编译时编织,并且所有方面都是在编译期间引入的。