49장. 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 |
| 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를 구성할 때 동일한 패키지에 여러 모델을 안전하게 가질 수 있으므로 더 이상 이러한 문제가 발생하지 않습니다.
49.1. 옵션
Bindy dataformat은 아래에 나열된 5 가지 옵션을 지원합니다.
이름 | 기본값 | Java Type | 설명 |
---|---|---|---|
type |
| csv 사용 여부, 고정 또는 키 값 쌍 모드입니다. 기본값은 선택한 데이터 형식에 따라 Csv 또는 KeyValue입니다. | |
classType |
| 사용할 모델 클래스의 이름입니다. | |
locale |
| 단위 상태를 위해 us와 같이 사용할 기본 로케일을 구성하려면 다음을 수행합니다. JVM 플랫폼 기본 로케일을 사용하려면 이름 기본값을 사용합니다. | |
unwrapSingleInstance |
|
| unmarshalling이 단일 인스턴스를 래핑하지 않고 java.util.List로 래핑하지 않아야 할 때. |
contentTypeHeader |
|
| 데이터 형식이 데이터 형식에서 수행할 수 있는 경우 데이터 형식의 유형으로 Content-Type 헤더를 설정해야 하는지 여부입니다. 예를 들어 데이터 형식을 XML로 마샬링하거나, JSon으로 마샬링되는 데이터 형식에 대한 application/json 등이 있습니다. |