我如何在Liferay Service Builder中配置AOP ?



我想在Service Builder中拦截一个方法,例如:XXXLocalService.update()。但我不知道正确的做法。我做了一些研究,但还没有找到一个明确的方法。

假设你想拦截Liferay的服务,在Liferay中基本上有两种方法可以实现这一点:

  1. 服务包装钩子

    的作用是为您提供所需服务的包装器,例如:UserLocalServiceWrapper将是UserLocalService的包装器,并且将完全控制该接口中定义的方法。如果您知道要在特定服务中修改/拦截的确切方法,这是一个很好的方法。

    同样,使用这种方法,您可以完全控制原始方法是否应该运行。

    该链接提供了如何实现此功能的完整详细教程。

  2. 模型监听器钩子

    当您想要跟踪特定模型上的任何更改时,应该使用此钩子,如上面的案例User,当您不确定哪个方法将更新模型时,这很有帮助。

    这基本上是给你一组方法,如onBeforeUpdate, onAfterUpdate, onAfterCreate等来控制模型。

相关内容

  • 没有找到相关文章

最新更新