Fundamentals

This section covers the ideas every part of Spring DDD shares. What each part does is mapped on the introduction.

Example domain

All examples throughout this documentation use a banking domain: BankAccount aggregate identified by AccountId, value object Money, events AccountOpened / MoneyDeposited / MoneyWithdrawn, commands OpenAccount / DepositMoney / WithdrawMoney, and read model AccountSummary.

Where to go next

To add Spring DDD to a project, see Installation and Quick start.

For the annotation vocabulary that underlies every part, continue with Building blocks & stereotypes.