Skip to content

Latest commit

 

History

History
57 lines (44 loc) · 1.66 KB

File metadata and controls

57 lines (44 loc) · 1.66 KB

Reservation System - Spring Boot Backend

Java Spring Boot Maven MongoDB Keycloak

A secure Spring Boot backend application for reservation management with MongoDB persistence and Keycloak/ JWT authentication.

Key Features

  • Secure REST API with:
    • JWT authentication (jjwt 0.11.5)
    • Keycloak integration (21.0.0)
    • OAuth2 resource server
  • MongoDB data persistence
  • Spring Security with OAuth2 client/resource support
  • Developer Friendly:
    • Lombok for boilerplate reduction
    • Spring Boot DevTools
    • Maven wrapper included

Technology Stack

  • Core: Java 11, Spring Boot 2.7+
  • Database: MongoDB
  • Security:
    • Spring Security 5.7.8
    • Keycloak 21.0.0
    • JJWT 0.11.5
  • Tools:
    • Lombok
    • Maven 3.8.1

UML Diagram

image

Getting Started

Prerequisites

  • Java 11 JDK
  • Maven 3.8+
  • MongoDB 5+
  • Keycloak server (optional) delete security folder for this

Configure your MongoDB and Keycloak in application.properties:

  • spring.data.mongodb.uri=mongodb://localhost:27017/reservations
  • keycloak.realm=your-realm
  • keycloak.auth-server-url=http://localhost:8080/auth
  • keycloak.resource=your-client-id

Build and run:

  • mvn clean install
  • mvn spring-boot:run