ArangoDB v3.10 reached End of Life (EOL) and is no longer supported.

This documentation is outdated. Please see the most recent stable version.


Registering a Spring Converter

The ArangoConfiguration provides a convenient way to register Spring Converter by implementing the method customConverters().


public class MyConfiguration implements ArangoConfiguration {

  protected Collection<Converter<?, ?>> customConverters() {
    return Arrays.asList(new MyConverter());


Implementing a Spring Converter

A Converter is used for reading if the source type is of type JsonNode or DBDocumentEntity.

A Converter is used for writing if the target type is of type JsonNode, DBDocumentEntity, BigInteger, BigDecimal, java.sql.Date, java.sql.Timestamp, Instant, LocalDate, LocalDateTime, OffsetDateTime, ZonedDateTime, Boolean, Short, Integer, Byte, Float, Double, Character, String, Date, Class, Enum, boolean[], long[], short[], int[], byte[], float[], double[] or char[].


public class MyConverter implements Converter<MyObject, JsonNode> {

  public JsonNode convert(final MyObject source) {
    ObjectNode on = JsonNodeFactory.instance.objectNode();
    // map fields of MyObject to builder
    // on.put("key", "value");
    // ...  
    return on;