62장. JSON Jackson
jackson은 Jackson 라이브러리를 사용하는 데이터 형식입니다.
from("activemq:My.Queue"). marshal().json(JsonLibrary.Jackson). to("mqseries:Another.Queue");
from("activemq:My.Queue").
marshal().json(JsonLibrary.Jackson).
to("mqseries:Another.Queue");
62.1. jackson 옵션 링크 복사링크가 클립보드에 복사되었습니다!
JSON Jackson 데이터 형식은 아래에 나열된 20 가지 옵션을 지원합니다.
이름 | Default | Java Type | 설명 |
---|---|---|---|
objectMapper |
| Jackson을 사용할 때 지정된 ID와 함께 기존 ObjectMapper를 조회하고 사용합니다. | |
useDefaultObjectMapper |
| 레지스트리에서 기본 Jackson ObjectMapper를 조회하고 사용할지 여부입니다. | |
prettyPrint |
| 출력을 완벽하게 포맷할 수 있도록 하려면 다음을 수행하십시오. 기본값은 false입니다. | |
unmarshalType |
| 요약할 때 사용할 Java 유형의 클래스 이름입니다. | |
jsonView |
| ScanSetting을 JSON으로 마샬링할 때 JSON 출력에서 특정 필드를 제외할 수 있습니다. Jackson을 사용하면 JSON 보기를 사용하여 이 작업을 수행할 수 있습니다. 이 옵션은 JsonView 주석이 있는 클래스를 참조하는 것입니다. | |
include |
| pojo를 JSON으로 마샬링하려면 pojo에 null 값이 있는 일부 필드가 있습니다. 이러한 null 값을 건너뛰려면 이 옵션을 NON_NULL로 설정할 수 있습니다. | |
allowJmsType |
| JMS 사용자가 JMS 사양의 JMSType 헤더가 요약을 해제하는 데 사용할 FQN 클래스 이름을 지정할 수 있도록 허용합니다. | |
collectionType |
| 사용할 레지스트리의 조회할 사용자 정의 컬렉션 유형을 나타냅니다. 이 옵션은 거의 사용되지 않지만 java.util.ECDHE 기반 컬렉션 유형과 다른 컬렉션 유형을 기본값으로 사용할 수 있습니다. | |
useList |
| Map 목록 또는 Pojo 목록으로 요약할 수 있습니다. | |
moduleClassNames |
| 사용자 지정 Jackson 모듈 com.fasterxml.jackson.databind.Module을 FQN 클래스 이름으로 String으로 지정합니다. 여러 클래스를 쉼표로 구분할 수 있습니다. | |
moduleRefs |
| Camel 레지스트리에서 언급한 사용자 지정 Jackson 모듈을 사용하려면 다음을 수행하십시오. 여러 모듈은 쉼표로 구분할 수 있습니다. | |
enableFeatures |
| jackson com.fasterxml.jackson.databind.ObjectMapper에서 활성화할 기능 세트. 기능은 com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature 또는 com.fasterxml.jackson.databind.MapperFeature의 여러 기능에 의해 쉼표로 구분될 수 있는 이름이어야 합니다. | |
disableFeatures |
| jackson com.fasterxml.jackson.databind.ObjectMapper에서 비활성화할 기능 세트. 기능은 com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature 또는 com.fasterxml.jackson.databind.MapperFeature의 여러 기능에 의해 쉼표로 구분될 수 있는 이름이어야 합니다. | |
allowUnmarshallType |
| 활성화하면 Jackson이 축소되지 않는 동안 CamelJacksonUnmarshalType 헤더를 사용할 수 있습니다. 이 기능은 사용하려는 경우에만 활성화해야 합니다. | |
timezone |
| 설정한 경우 Jackson은 마샬링/해결 시 Timezone을 사용합니다. 이 옵션은 gson, fastjson 및 xstream과 같은 다른 Json DataFormat에는 영향을 미치지 않습니다. | |
autoDiscoverObjectMapper |
| true로 설정하면 Jackson이 objectMapper의 레지스트리를 조회합니다. | |
contentTypeHeader |
| 데이터 형식이 데이터 형식의 유형으로 Content-Type 헤더를 설정해야 하는지 여부입니다. 예를 들어 데이터 형식의 application/xml은 XML로 마샬링하거나 데이터 형식의 경우 application/json을 JSON으로 마샬링합니다. | |
schemaResolver |
| 전송 중인 데이터의 스키마를 조회하는 데 사용되는 선택적 스키마 확인자입니다. | |
autoDiscoverSchemaResolver |
| 비활성화하지 않으면 SchemaResolver가 레지스트리를 조회합니다. | |
namingStrategy |
| 그런 다음 Jackson이 정의된 Property Naming Strategy.Possible 값을 사용하는 경우: LOWER_CAEL_CASE, LOWER_DOT_CASE, LOWER_CASE, KEBAB_CASE, SNAKE_CASE 및 UPPER_CAMEL_CASE. |