Domain Service Java

Build a domain-service based on Java supporting Domain Driven Design (DDD) principles to serve a wide range of purposes including design model and code generation.

Formally known as DDD Service Project / Low-Code Project Java

Introduction

This project type supports designing all elements of the component with a high level of automation – from design, to develop, to deploy. The Solution Designer lets you model all parts in a structured and organized way, offering rich documentation possibilities for most of these elements with e.g., auto-generated UML diagrams to visualize the design model. This project type offers full automation support for code generation, resulting in up to 70% of the needed code. Meaning, you can fully concentrate on adding the needed business logic for the solution to solve the dedicated business problem.

Stack

The project is based on the Java Spring Boot Stack.

Projects of this type, created with version 4.1.0 or higher, are using the Java Spring Boot Stack 2.0 by default. If you want to migrate existing projects based on Java Spring Boot Stack 1.0, please follow the Upgrade Instructions.

Available Extensions

  • Aggregate Persistence Support: Easily persist your business data in a database (RDBMS/MongoDB).
  • API Modelling: Model and implement a secure REST API and publish it as an OpenAPI specification.
  • Business Event Support: Model and implement business events and agents using Apache Kafka.
  • Domain Modelling: Model and implement your business logic based on Domain Driven Design principles.
  • Integration Modelling: Model and implement integrations to other services.
  • Unit Testing Support: Autogenerate unit testing stubs for your implementation.
  • Saga Pattern Support: Model and implement your services using the Saga Pattern for distributed transaction (Only available for projects based on Java Spring Boot Stack 2.0)
  • Swagger UI Support: Visualize and easily access your REST API.