This is a digital library application built using Spring Boot, Spring Data JPA, and PostgreSQL. It allows users to manage authors, books, loans, and user accounts within a library system.
- Author Management : ✍️ Add, 🔍 retrieve, ✏️ update, and ❌ delete authors.
- Book Management : 📖 Add, 🔍 retrieve, ✏️ update, and ❌ delete books. Each book belongs to an author.
- Loan Management : 📅 Create, 🔍 retrieve, and ↩️ return book loans made by users.
- User Management: 👤 Manage user accounts with different roles (🔒 USER, 🔑 ADMIN, 📚 LIBRARIAN).
- Global Exception Handling : 🛡️ Handle common HTTP errors globally using a centralized exception handler.
- JWT Authentication : 🔐 Secure the application using JSON Web Tokens for user authentication.
- Java 17
- Spring Boot
- Spring Data JPA
- PostgreSQL