تفاصيل العمل

A comprehensive Spring Boot REST API for managing books and authors with a MySQL database. This project demonstrates best practices for building scalable, production-grade Java applications using Spring Data JPA, validation, error handling, and API documentation.

? Table of Contents

Features

Technology Stack

Prerequisites

Installation

Configuration

Project Structure

API Endpoints

Database Schema

Running the Application

API Documentation

Error Handling

File Upload

Validation

Contributing

✨ Features

✅ RESTful API for Books and Authors management

✅ Spring Data JPA for seamless database operations

✅ MySQL Database Integration with automatic schema creation

✅ Input Validation with custom validators and error messages

✅ Comprehensive Error Handling with global exception handler

✅ File Upload Functionality for storing book-related files

✅ Swagger/OpenAPI Documentation for easy API exploration

✅ Scheduled Tasks using ShedLock for distributed systems

✅ DTO Pattern for clean separation of concerns

✅ Lombok for reducing boilerplate code

✅ IP Address Validation for request filtering

?️ Technology Stack

Technology Version Purpose

Java 17 Programming language

Spring Boot 2.6.1 Framework & HTTP server

Spring Data JPA 2.6.1 ORM & database access

MySQL Latest Relational database

Lombok 1.18.22 Boilerplate reduction

Swagger/OpenAPI 1.6.4 API documentation

ShedLock 4.27.0 Scheduled task coordination

Maven 3.6+ Build & dependency management

? Prerequisites

Before running this project, ensure you have:

Java 17 or higher installed

Maven 3.6+ installed

MySQL 8.0+ server running

Git for cloning the repository

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
تاريخ الإضافة
تاريخ الإنجاز
المهارات