49장. Bindy DataFormat
Camel 버전 2.0에서 사용 가능
이 구성 요소의 목표는 주석으로 정의된 바인딩 매핑이 있는 Java Cryostat까지(또는 보다 정확한 비 XML 데이터)로 구문 분석/바인딩할 수 있도록 하는 것입니다.
Bindy를 사용하면 다음과 같은 소스에서 데이터를 바인딩할 수 있습니다.
- CSV 레코드,
- 고정 길이 레코드,
- FIX 메시지,
- 또는 거의 모든 다른 구조화되지 않은 데이터
하나 이상의 Plain Old Java Object(POJO)입니다. Bindy는 java 속성의 유형에 따라 데이터를 변환합니다. Cryostat는 경우에 따라 사용할 수 있는 일대다 관계와 함께 연결할 수 있습니다. 또한 Date, double, Float, Integer, Short, Long 및 BigDecimal과 같은 데이터 유형의 경우 속성 포맷 중에 적용할 패턴을 제공할 수 있습니다.
BigDecimal 숫자의 경우 전체 크기 및 10진수 또는 그룹화 구분 기호를 정의할 수도 있습니다.
유형 | 형식 유형 | 패턴 예 | 링크 |
---|---|---|---|
날짜 | 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 메시지)만 지원합니다.
camel-bindy로 작업하려면 먼저 패키지(예: com.acme.model) 및 각 모델 클래스(예: 주문, 클라이언트, Instrument, …)에 필요한 주석을 클래스 또는 필드에 추가해야 합니다.
*Multiple models*
여러 모델을 사용하는 경우 예기치 않은 결과를 방지하기 위해 각 모델을 자체 패키지에 배치해야합니다.
Camel 2.16 부터는 이제 패키지 이름 대신 클래스 이름을 사용하여 bindy를 구성할 수 있으므로 동일한 패키지에 여러 모델을 안전하게 사용할 수 있으므로 더 이상 그렇지 않습니다.
49.1. 옵션
Bindy dataformat은 아래에 나열된 5가지 옵션을 지원합니다.
이름 | 기본 | Java Type | 설명 |
---|---|---|---|
type |
| csv, 고정 또는 키 값 쌍 모드 사용 여부입니다. 기본값은 선택한 데이터 형식에 따라 Csv 또는 KeyValue입니다. | |
classType |
| 사용할 모델 클래스의 이름입니다. | |
locale |
| 통합된 상태에 대해 사용할 기본 로케일을 구성하려면 다음을 수행합니다. JVM 플랫폼 기본 로케일을 사용하려면 name default를 사용합니다. | |
unwrapSingleInstance |
|
| 단일 인스턴스를 래핑 해제하고 java.util.List로 래핑하지 않고 반환해야 하는 경우. |
contentTypeHeader |
|
| 데이터 형식이 이렇게 할 수 있는 경우 데이터 형식의 형식으로 Content-Type 헤더를 설정해야 하는지 여부입니다. 예를 들어 데이터 형식의 애플리케이션/xml은 XML로 마샬링하거나 데이터 형식의 경우 JSon으로 마샬링하는 애플리케이션/json의 경우 애플리케이션/json입니다. |