15.4. 组件选项
Bean 组件支持 4 个选项,如下所列。
| Name | 描述 | 默认值 | 类型 |
|---|---|---|---|
| cache (producer) | 弃用了 Use singleton 选项。 | true | 布尔值 |
| lazyStartProducer (producer) | 生成者是否应懒惰启动 (在第一个消息中)。通过懒惰启动,您可以使用此选项来允许 CamelContext 和路由在生成者启动期间启动,并导致路由启动失败。通过懒惰启动,启动失败可以在路由信息时通过 Camel 的路由错误处理程序进行处理。请注意,在处理第一个消息时,创建并启动生成者可能需要稍等时间,并延长处理的总处理时间。 | false | 布尔值 |
| scope (producer) | bean 范围。使用单例范围(默认)创建 Bean 时,或在端点生命周期中仅查找一次并重复使用。当并发线程同时调用 bean 时,bean 应该为 thread-safe。使用请求范围时,会创建 bean 或查找每个请求一次(交换)。如果要在处理请求时将状态存储在 bean 上,而您希望在处理请求时多次调用同一 bean 实例,则可以使用它。bean 不必是 thread-safe,因为实例只能从同一请求调用。使用委派范围时,每个调用将查找或创建 bean。但是,如果查找,这被委派给 bean registry,如 Spring 或 CDI (如果使用),这取决于其配置可以充当单例或原型范围。因此,这取决于委派的 registry。 Enum 值:
| 单例 | BeanScope |
| autowiredEnabled (advanced) | 是否启用自动关闭。这用于自动关闭选项(选项必须标记为 autowired),方法是在 registry 中查找查找是否有单个匹配类型实例,然后在组件上配置。这可以用于自动配置 JDBC 数据源、JMS 连接工厂、AWS 客户端等。 | true | 布尔值 |