ddd-with-spring
                                
                                
                                
                                    ddd-with-spring copied to clipboard
                            
                            
                            
                        Code examples for my conference talk on implementing ddd with spring
ddd-with-spring
This repository aims at showcasing a way how you could implement various aspects from Domain-driven Design with the Spring ecosystem. It is also the demo project for my conference talk "Implementing Domain-driven Design with the Spring ecosystem".
Which DDD aspects are covered?
The focus of the demo project are Aggregates, event-based communication and bounded contexts. The complete list is:
- Aggregates
 - Event-based communication with
- a message broker (RabbitMQ)
 - HTTP Feeds
 - Spring Application Events
 
 - Architectural styles
- Hexagonal Architecture
 - CRUD
 - Query-driven (not yet implemented properly)
 
 
Which Spring Technologies are being used?
The project uses the following Spring technologies:
- Spring Framework Core
 - Spring MVC
 - Spring Boot
 - Spring Cloud Stream
 - Spring Data JPA
 
Prerequisites and getting started
In order to run the application you need to have Docker and docker-compose installed on your machine.
When you have docker up and running you need to perform the following steps on the command line:
- ./mvnw clean package
 - docker-compose up --build
 - After everything has started you can open http://localhost:8080 in a browser of your choice