【发布时间】:2015-04-01 19:25:00
【问题描述】:
目前我正在开发一个应用程序,该应用程序应该集成到任何基于 Spring 的 Web 应用程序中,以使用户能够通过在运行时更改 @Pointcut 注释的值来定义动态切入点。我的主要目标是在应用程序仍在运行时切换某个方面的编织方法。
到目前为止,我已经开始启动一个 Spring 应用程序上下文,从一个主方法定义一个方面类,并通过反射更改注释值。但是,在我看来,这种变化并没有影响 Spring 创建的代理对象。在应用我的更改之前,方面仍然根据原始 @Pointcut 值进行编织和调用。 我想到了尝试这个的想法,因为根据“Spring in Action”和 Spring 文档,这些代理对象是在运行时创建的。所以我得出结论,必须有一种方法来提供运行时更改。
有谁知道除了我的使用 Spring AOP 的方法之外是否还有其他方法可以实现这一点?我期待您的想法和意见!
编辑:如果可能的话,保持现有代码不变对我的解决方案很重要。所以在 bean 中添加或替换方法对我来说不是一个选择。
【问题讨论】:
-
您是否碰巧找到了解决方案?
标签: java spring-aop