## Axon

This module contains articles about Axon

## Profiles

Optionally the code can be run with the 'mongo' profile to use Mongo to store the projection. Otherwise, an in-memory
projection is used.

## Scripts

Two scripts are included to easily start middleware using Docker matching the properties files:

- `start_axon_server.sh` to start an Axon Server instance
- `start_mongo.sh` to start a MongoDB instance

### Relevant articles

- [A Guide to the Axon Framework](https://www.baeldung.com/axon-cqrs-event-sourcing)
- [Multi-Entity Aggregates in Axon](https://www.baeldung.com/java-axon-multi-entity-aggregates)
- [Snapshotting Aggregates in Axon](https://www.baeldung.com/axon-snapshotting-aggregates)
- [Dispatching Queries in Axon Framework](https://www.baeldung.com/axon-query-dispatching)
- [Persisting the Query Model](https://www.baeldung.com/persisting-the-query-model)
- [Using and testing Axon applications via REST](https://www.baeldung.com/using-and-testing-axon-applications-via-rest)
