48장. Bindy DataFormat

Camel 버전 2.0에서 사용 가능

이 구성 요소의 목표는 비구조화된 데이터의 구문 분석/바인딩(또는 보다 정확한 비 XML 데이터)
~/from Java Beans that have binding mappings defined with annotations. Bindy를 사용하면 다음과 같은 소스의 데이터를 바인딩할 수 있습니다.

  • CSV 레코드
  • 고정 길이 레코드,
  • FIX 메시지,
  • 또는 거의 비정형되지 않은 데이터

POJO(Plain Old Java Object) 중 하나 이상 Bindy는 java 속성의 유형에 따라 데이터를 변환합니다. POJO는 일부 경우에 사용 가능한 일대다 관계와 함께 연결할 수 있습니다. 또한 Date, Double, Float, Integer, Short, Long and BigDecimal와 같은 데이터 형식의 경우 속성을 포맷하는 동안 적용할 패턴을 제공할 수 있습니다.

BigDecimal 숫자의 경우 전체 자릿수와 소수 또는 그룹화 구분 기호도 정의할 수 있습니다.For the Big decimal numbers, you can also define the precision and the decimal or grouping separators.

유형형식 유형패턴 예link

날짜

DateFormat

dd-MM-yyyy

http://java.sun.com/j2se/1.5.0/docs/api/java/text/SimpleDateFormat.html

decimal*

Decimalformat

..##

http://java.sun.com/j2se/1.5.0/docs/api/java/text/DecimalFormat.html

decimal* = Double, Integer, Float, Short, Long

*Format supported*

이 첫 번째 릴리스에서는 쉼표로 구분된 값 필드와 키 값 쌍 필드(예: FIX 메시지)만 지원합니다.

comel-bindy를 사용하려면 먼저 패키지(예: com.acme.model)에서 모델을 정의하고 각 모델 클래스(예: Order, Client, Instrument, …​)에 필요한 주석을 클래스 또는 필드에 추가해야 합니다.

*Multiple models*

여러 모델을 사용하는 경우 예측할 수 없는 결과를 방지하기 위해 각 모델을 자체 패키지에 배치해야 합니다.

Camel 2.16 이후부터는 이제 패키지 이름 대신 클래스 이름을 사용하여 bindy를 구성할 때 동일한 패키지에 여러 모델을 안전하게 가질 수 있으므로 더 이상 이러한 문제가 발생하지 않습니다.

48.1. 옵션

Bindy dataformat은 아래에 나열된 5 가지 옵션을 지원합니다.

이름기본값Java Type설명

type

 

BindyType

csv 사용 여부, 고정 또는 키 값 쌍 모드입니다. 기본값은 선택한 데이터 형식에 따라 Csv 또는 KeyValue입니다.

classType

 

문자열

사용할 모델 클래스의 이름입니다.

locale

 

문자열

단위 상태를 위해 us와 같이 사용할 기본 로케일을 구성하려면 다음을 수행합니다. JVM 플랫폼 기본 로케일을 사용하려면 이름 기본값을 사용합니다.

unwrapSingleInstance

true

부울

unmarshalling이 단일 인스턴스를 래핑하지 않고 java.util.List로 래핑하지 않아야 할 때.

contentTypeHeader

false

부울

데이터 형식이 데이터 형식에서 수행할 수 있는 경우 데이터 형식의 유형으로 Content-Type 헤더를 설정해야 하는지 여부입니다. 예를 들어 데이터 형식을 XML로 마샬링하거나, JSon으로 마샬링되는 데이터 형식에 대한 application/json 등이 있습니다.