Spring Boot Tutorial 0/110 lessons ~6 min read Lesson 100

    Real Production Folder Structure

    How serious teams organise a Spring Boot service.

    Course progress0%
    Focus
    2 guided sections
    Practice signal
    Concept-first lesson
    Career prep
    Foundation builder

    Introduction

    How serious teams organise a Spring Boot service. Package by feature, then layered inside.

    Syntax reference

    bash
    com.acme.orders/
    ├── OrdersApplication.java
    ├── config/
    │ ├── SecurityConfig.java
    │ ├── KafkaConfig.java
    │ └── ObservabilityConfig.java
    ├── orders/ ← feature: orders
    │ ├── api/
    │ │ ├── OrderController.java
    │ │ ├── dto/
    │ │ └── ApiExceptionHandler.java
    │ ├── application/
    │ │ ├── PlaceOrderUseCase.java
    │ │ ├── CancelOrderUseCase.java
    │ │ └── OrderQueries.java
    │ ├── domain/
    │ │ ├── Order.java ← aggregate root
    │ │ ├── OrderItem.java
    │ │ └── events/OrderPlaced.java
    │ └── infrastructure/
    │ ├── persistence/
    │ │ ├── JpaOrderRepository.java
    │ │ └── OrderEntity.java
    │ └── messaging/
    │ └── OrderEventsPublisher.java
    ├── billing/ ← feature: billing
    │ └── ...
    └── shared/ ← truly cross-cutting
    ├── ids/
    └── money/
    Ready to mark this lesson complete?Track your journey across the entire course.