-
Notifications
You must be signed in to change notification settings - Fork 199
marshallers
A RecordMarshaller
does the opposite task of a RecordMapper
: it marshals the payload of a record (typically a POJO) to a target format (Xml, Json, Yaml, Csv, etc).
Here is a table of built-in marshallers and how to use them:
Marshaller | Module | Record type | Description |
---|---|---|---|
DelimitedRecordMarshaller | easy-batch-flatfile | StringRecord | marshals a POJO to CSV format |
FixedLengthRecordMarshaller | easy-batch-flatfile | StringRecord | marshals a POJO to fixed-length format |
UnivocityFixedWidthRecordMarshaller | easy-batch-univocity | StringRecord | marshals a POJO to fixed-width format using Univocity |
ApacheCommonCsvRecordMarshaller | easy-batch-apache-common-csv | StringRecord | marshals a POJO to CSV format using Apache commons CSV |
UnivocityCsvRecordMarshaller | easy-batch-univocity | StringRecord | marshals a POJO to CSV format using Univocity |
UnivocityTsvRecordMarshaller | easy-batch-univocity | StringRecord | marshals a POJO to TSV format using Univocity |
XmlRecordMarshaller | easy-batch-xml | XmlRecord | marshals a POJO annotated with javax.xml.bind.annotation.XmlRootElement to Xml format using Jaxb |
JsonRecordMarshaller | easy-batch-json | JsonRecord | marshals a POJO to Json format using JsonB |
XstreamRecordMarshaller | easy-batch-xstream | XmlRecord | marshals a POJO to Xml format using XStream |
GsonRecordMarshaller | easy-batch-gson | JsonRecord | marshals a POJO to Json format using Gson |
JacksonRecordMarshaller | easy-batch-jackson | JsonRecord | marshals a POJO to Json format using Jackson |
YamlRecordMarshaller | easy-batch-yaml | YamlRecord | marshals a POJO to Yaml format using yamlbeans |
MsExcelRecordMarshaller | easy-batch-msexcel | MsExcelRecord | marshals a POJO to MsExcel row using Apache POI |
By default, the DelimitedRecordMarshaller
, FixedLengthRecordMarshaller
, OpenCsvRecordMarshaller
and ApacheCommonCsvRecordMarshaller
do not support recursive (deep) marshalling of POJOs.
In order to have more control over how to extract and format your domain object's fields, you can implement the FieldExtractor
interface and supply your implementation at marshaller's construction time.
Easy Batch provides the BeanFieldExtractor
that uses Java Bean conventions to extract field from a POJO. It is also possible to use the BeanFieldExtractor
to format field by registering a custom TypeConverter<?, String>
.
Easy Batch is created by Mahmoud Ben Hassine with the help of some awesome contributors
-
Introduction
-
User guide
-
Job reference
-
Component reference
-
Get involved