Library Management REST API
A clean, practical, and interview-friendly Spring Boot REST application.
🔹 Core Features
You build APIs to manage:
Books
Users (Students/Admin)
Book Issue / Return
Fine calculation
🧩 Entities (Simple & Realistic)
1️⃣ Book
id
title
author
isbn
availableCopies
2️⃣ User
id
name
email
role (STUDENT / ADMIN)
3️⃣ IssueRecord
id
issueDate
dueDate
returnDate
status (ISSUED / RETURNED)
🌐 REST Endpoints (Using ResponseEntity)
📘 Book APIs
POST /api/books
GET /api/books
GET /api/books/{id}
PUT /api/books/{id}
DELETE /api/books/{id}
Example:
@PostMapping
public ResponseEntity<Book> addBook(@RequestBody Book book) {
Book savedBook = [Link](book);
return new ResponseEntity<>(savedBook, [Link]);
}
👤 User APIs
POST /api/users
GET /api/users
GET /api/users/{id}
🔄 Issue / Return APIs
POST /api/issue/{bookId}/{userId}
PUT /api/return/{issueId}