Spring Data ArangoDB includes several ApplicationEvent events that your application can respond to by registering subclasses of AbstractArangoEventListener in the ApplicationContext.

The following callback methods are present in AbstractArangoEventListener:

  • onAfterLoad: Called in ArangoTemplate#find and ArangoTemplate#query after the object is loaded from the database.
  • onBeforeSave: Called in ArangoTemplate#insert/#update/#replace before the object is converted and send to the database.
  • onAfterSave: Called in ArangoTemplate#insert/#update/#replace after the object is send to the database.
  • onBeforeDelete: Called in ArangoTemplate#delete before the object is converted and send to the database.
  • onAfterDelete: Called in ArangoTemplate#delete after the object is deleted from the database.



public class BeforePersonSavedListener extends AbstractArangoEventListener<Person> {

  public void onBeforeSave(BeforeSaveEvent<Person> event) {
    // do some logging or data manipulation


To register the listener add @ComponentScan with the package of your listener to your configuration class.

public class MyConfiguration implements ArangoConfiguration {