ddd4j-data
Installation
SKILL.md
ddd4j Data
Overview
Pick the persistence model first, then the technology. Snapshot Repository, Event Sourcing, Projection, and Outbox are distinct responsibilities that may be combined but must not blur transaction boundaries.
When to Use
- Choosing the persistence technology: JDBC, JDBI, JPA, MyBatis/MyBatis-Plus, R2DBC, Panache, or ESDB EventStore.
- Mapping between
AggregateRootand PO/Entity classes, and wiringQuery<M>persistence scopes. - Implementing the
EventStore/AsyncEventStoreport with expected-version checks and atomic batch appends. - Building read models with
ProjectionRunner/ProjectionServiceandProjectionPositionRepository. - Implementing the Transactional Outbox with claim / send / confirm semantics.
- Defining transaction boundaries, tenant scoping, encrypted fields, and auditing at the persistence layer.
When NOT to Use
Do not use this skill when: