60.5. Spring Boot Auto-Configuration
当将 protobuf-jackson 与 Spring Boot 搭配使用时,请确保使用以下 Maven 依赖项支持自动配置:
<dependency> <groupId>org.apache.camel.springboot</groupId> <artifactId>camel-jackson-protobuf-starter</artifactId> <version>{CamelSBProjectVersion}</version> <!-- use the same version as your Camel core version --> </dependency>
组件支持 19 选项,如下所示。
Name | 描述 | 默认 | 类型 |
---|---|---|---|
camel.dataformat.protobuf-jackson.allow-jms-type | 用于 JMS 用户,允许 JMS spec 中的 JMSType 标头指定用于 unmarshal 的 FQN 类名称。 | false | 布尔值 |
camel.dataformat.protobuf-jackson.allow-unmarshall-type | 如果启用,则 Jackson 可以在 unmarshalling 中尝试使用 CamelJacksonUnmarshalType 标头。只有在需要使用时,才应启用它。 | false | 布尔值 |
camel.dataformat.protobuf-jackson.auto-discover-object-mapper | 如果设置为 true,则 Jackson 会将 objectMapper 查找到 registry 中。 | false | 布尔值 |
camel.dataformat.protobuf-jackson.auto-discover-schema-resolver | 如果不禁用,SchemaResolver 会查找到 registry 中。 | true | 布尔值 |
camel.dataformat.protobuf-jackson.collection-type | 指的是要在注册表中查找的自定义集合类型。这个选项很少被使用,但允许使用与 java.util.Collection 不同的集合类型作为默认值。 | 字符串 | |
camel.dataformat.protobuf-jackson.content-type-header | 数据格式是否应该使用数据格式的类型设置 Content-Type 标头。例如:用于数据格式到 XML 的 application/xml,或数据格式到 JSON 的 application/json。 | true | 布尔值 |
camel.dataformat.protobuf-jackson.disable-features | 在 Jackson com.fasterxml.jackson.databind.ObjectMapper 上禁用功能集。特性应该是一个名称,与来自 com.fasterxml.jackson.databind.SerializationFeature、com.fasterxml.jackson.jackson.databind.DeserializationFeature 或 com.fasterxml.jackson.databind.SerializationFeature 多功能可以分开。 | 字符串 | |
camel.dataformat.protobuf-jackson.enable-features | 在 Jackson com.fasterxml.jackson.databind.ObjectMapper 上启用的功能集。特性应该是一个名称,与来自 com.fasterxml.jackson.databind.SerializationFeature、com.fasterxml.jackson.jackson.databind.DeserializationFeature 或 com.fasterxml.jackson.databind.SerializationFeature 多功能可以分开。 | 字符串 | |
camel.dataformat.protobuf-jackson.enabled | 是否启用 protobuf-jackson 数据格式的自动配置。默认启用。 | 布尔值 | |
camel.dataformat.protobuf-jackson.include | 如果您想将 pojo to JSON 放入 JSON,则 pojo 含有一些带有 null 值的字段。您想跳过这些空值,您可以将这个选项设置为 NON_NULL。 | 字符串 | |
camel.dataformat.protobuf-jackson.json-view | 当 marshalling a POJO to JSON 时,您可能想要从 JSON 输出中排除某些字段。通过 Jackson,您可以使用 JSON 视图来达到此目的。此选项用于引用具有 JsonView 注解的类。 | 字符串 | |
camel.dataformat.protobuf-jackson.module-class-names | 要使用自定义 Jackson 模块 com.fasterxml.jackson.databind.Module 指定为带有 FQN 类名称的 String。可以使用逗号分隔多个类。 | 字符串 | |
camel.dataformat.protobuf-jackson.module-refs | 使用由 Camel registry 引用的自定义 Jackson 模块。可以使用逗号分隔多个模块。 | 字符串 | |
camel.dataformat.protobuf-jackson.object-mapper | 在使用 Jackson 时,查找并使用给定 ID 的现有 ObjectMapper。 | 字符串 | |
camel.dataformat.protobuf-jackson.schema-resolver | 可选架构解析器用于查找传输中数据的架构。 | 字符串 | |
camel.dataformat.protobuf-jackson.timezone | 如果设置,则 Jackson 会在 marshalling/unmarshalling 时使用 Timezone。 | 字符串 | |
camel.dataformat.protobuf-jackson.unmarshal-type | unmarshalling 时要使用的 java 类型的类名称。 | 字符串 | |
camel.dataformat.protobuf-jackson.use-default-object-mapper | 是否从注册表中查找和使用默认 Jackson ObjectMapper。 | true | 布尔值 |
camel.dataformat.protobuf-jackson.use-list | 要联合到映射列表或 Pojo 列表。 | false | 布尔值 |