我是Camel的新手,并且在CamelContext和Registry之间感到困惑。
据我所知,CamelContext是Spring中的ApplicationContext之类的基础对象,用于添加路由并维护驼峰生命周期。
我们还从CamelContext获取了Registry对象,但不确定此注册表的主要用途是什么。
我的目的是在上下文/注册表中添加组件,以便JNDIBind可以查找组件。
答案 0 :(得分:3)
CamelContext:一种将Camel中的所有内容保存在一起的Camel Runtime,例如:Endpoints,TypeConverter,Routes,Components和Registry(!)。
注册表:允许您查找bean,默认情况下将是JNDI bean。如果你使用spring集成,它将是Spring的ApplicationContext。
答案 1 :(得分:0)
通常 camel 与 spring 一起使用时,会使用 ApplicationContextRegistry 来查找组件,端点等,其中包含在spring中定义的bean的名称-bean.xml文件。在我们需要使用JNDIRegistry的地方,我们必须在创建CamelContext时添加该注册表。这用于JNDI对象在多个JVM中共享的地方,其中JNDI是最佳解决方案。
请参阅驼峰的不同类型的注册表实现:camel registries