在 apache camel 上下文中存储状态的最佳方式
Best way to store state in an apache camel context
我需要保留一个字符串值,该值每小时更改一次,并由路由获取以供其他路由使用。我正在使用 Spring XML DSL。
我已经让它工作得很好,但它看起来很笨拙。我有一个 java class 和一个 setter 和一个 getter 来包装字符串,我将它设置为:
<to uri="bean:store?method=setValue"/>
然后通过另一条路线将其放回体内:
<to uri="bean:store?method=getValue"/>
是否有一种纯粹的 Spring 方法可以在 xml 中执行此操作而无需定制 java class?
您有多种选择:
- 使用缓存组件,如 Apache Ignite、EhCache 等。尽管对于像您这样的简单场景,这矫枉过正。不推荐。
- 使用 JDK
AtomicReference
作为您的 bean,而不是创建一个专门用于存储的 class。
显然,您不会删除通往 store/fetch 值的路径中的步骤,但您可以取消自定义 class.
我需要保留一个字符串值,该值每小时更改一次,并由路由获取以供其他路由使用。我正在使用 Spring XML DSL。
我已经让它工作得很好,但它看起来很笨拙。我有一个 java class 和一个 setter 和一个 getter 来包装字符串,我将它设置为:
<to uri="bean:store?method=setValue"/>
然后通过另一条路线将其放回体内:
<to uri="bean:store?method=getValue"/>
是否有一种纯粹的 Spring 方法可以在 xml 中执行此操作而无需定制 java class?
您有多种选择:
- 使用缓存组件,如 Apache Ignite、EhCache 等。尽管对于像您这样的简单场景,这矫枉过正。不推荐。
- 使用 JDK
AtomicReference
作为您的 bean,而不是创建一个专门用于存储的 class。
显然,您不会删除通往 store/fetch 值的路径中的步骤,但您可以取消自定义 class.