56.5. Spring Boot Auto-Configuration
在 Spring Boot 中使用 avro-jackson 时,请确保使用以下 Maven 依赖项来支持自动配置:
<dependency> <groupId>org.apache.camel.springboot</groupId> <artifactId>camel-jackson-avro-starter</artifactId> <version>3.14.5.redhat-00032</version> <!-- Use your Camel Spring Boot version --> </dependency>
组件支持 19 个选项,如下所列。
名称 | 描述 | 默认 | 类型 |
---|---|---|---|
camel.dataformat.avro-jackson.allow-jms-type | 用于 JMS 用户,以允许 JMS spec 中的 JMSType 标头指定用于 unmarshal 的 FQN 类名称。 | false | 布尔值 |
camel.dataformat.avro-jackson.allow-unmarshall-type | 如果启用,则 Jackson 允许在 unmarshalling 期间尝试使用 CamelJacksonUnmarshalType 标头。这只在需要使用时才启用。 | false | 布尔值 |
camel.dataformat.avro-jackson.auto-discover-object-mapper | 如果设置为 true,则 Jackson 将向 registry 中查找 objectMapper。 | false | 布尔值 |
camel.dataformat.avro-jackson.auto-discover-schema-resolver | 如果不禁用,SchemaResolver 将进入 registry。 | true | 布尔值 |
camel.dataformat.avro-jackson.collection-type | 指的是要在 registry 中使用的自定义集合类型。这个选项应该很少被使用,但允许使用与 java.util.Collection 不同的集合类型作为默认值。 | 字符串 | |
camel.dataformat.avro-jackson.content-type-header | 数据格式是否应使用数据格式的类型设置 Content-Type 标头。例如,用于数据格式的 application/xml 示例到 XML,或者用于数据格式的应用程序/json 到 JSON。 | true | 布尔值 |
camel.dataformat.avro-jackson.disable-features | Jackson com.fasterxml.jackson.databind.ObjectMapper 上禁用的功能集合。这个功能应该是与 com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, 或 com.fasterxml.jackson.databind.MapperFeature 的多个功能匹配的名称。 | 字符串 | |
camel.dataformat.avro-jackson.enable-features | 在 Jackson com.fasterxml.jackson.databind.ObjectMapper 上启用的功能集合。这个功能应该是与 com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, 或 com.fasterxml.jackson.databind.MapperFeature 的多个功能匹配的名称。 | 字符串 | |
camel.dataformat.avro-jackson.enabled | 是否启用 avro-jackson 数据格式的自动配置。这默认是启用的。 | 布尔值 | |
camel.dataformat.avro-jackson.include | 如果您想将 pojo 链接到 JSON,而 pojo 则有一些字段具有 null 值。您想要跳过这些 null 值,您可以将这个选项设置为 NON_NULL。 | 字符串 | |
camel.dataformat.avro-jackson.json-view | 将 POJO 打包到 JSON 时,您可能希望从 JSON 输出中排除某些字段。借助 Jackson,您可以使用 JSON 视图来完成此操作。此选项是引用具有 JsonView 注释的类。 | 字符串 | |
camel.dataformat.avro-jackson.module-class-names | 使用自定义 Jackson 模块 com.fasterxml.jackson.databind.Module,指定为带有 FQN 类名称的 String。可以使用逗号分隔多个类。 | 字符串 | |
camel.dataformat.avro-jackson.module-refs | 使用 Camel 注册表中提到的自定义 Jackson 模块。可以使用逗号分隔多个模块。 | 字符串 | |
camel.dataformat.avro-jackson.object-mapper | 使用 Jackson 时查找并使用现有的 ObjectMapper 和给定 ID。 | 字符串 | |
camel.dataformat.avro-jackson.schema-resolver | 用于查找传输中数据的模式解析器的可选模式。 | 字符串 | |
camel.dataformat.avro-jackson.timezone | 如果设置,则 Jackson 会在 marshalling/unmarshalling 时使用 Timezone。 | 字符串 | |
camel.dataformat.avro-jackson.unmarshal-type | 在 unmarshalling 时使用的 java 类型的类名称。 | 字符串 | |
camel.dataformat.avro-jackson.use-default-object-mapper | 是否从注册表查找和使用默认 Jackson ObjectMapper。 | true | 布尔值 |
camel.dataformat.avro-jackson.use-list | 要取消组合到映射列表或 Pojo 的列表,请执行以下操作: | false | 布尔值 |