How janaylson-369/biblioteca-ag-backend works
This is a Spring backend for a library system: its domain includes book/catalog management, users and reader profiles, reservations, physical copies, and loans. The principal workflow is cataloging a book and its copies, then reserving or borrowing an available copy and recording its return. Sampled service code shows book registration and cover storage, and loan entities encode return and renewal behavior. The README provides no capability details; unsampled controllers and services are represented cautiously, and edges are limited to relationships shown in excerpts or the source index.
Main entry points: LivroService.java Book management · controller Catalog endpoints · EmprestimoService.java Loan operations · UsuarioService.java User management
Components 22
Catalog
- Book management
src/main/java/br/gov/biblioteca_ag_backend/service/LivroService.java - Cover storage
src/main/java/br/gov/biblioteca_ag_backend/service/CapaStorageService.java - Book catalog
src/main/java/br/gov/biblioteca_ag_backend/model/Livro.java - Authors and categories
src/main/java/br/gov/biblioteca_ag_backend/model
Circulation
- Loan operations
src/main/java/br/gov/biblioteca_ag_backend/service/EmprestimoService.java - Loan lifecycle
src/main/java/br/gov/biblioteca_ag_backend/model/Emprestimo.java - Reservations
src/main/java/br/gov/biblioteca_ag_backend/service/ReservaService.java - Reservation state
src/main/java/br/gov/biblioteca_ag_backend/model/Reserva.java - Physical copies
src/main/java/br/gov/biblioteca_ag_backend/model/Exemplar.java
Users and Access
- User management
src/main/java/br/gov/biblioteca_ag_backend/service/UsuarioService.java - User identity
src/main/java/br/gov/biblioteca_ag_backend/model/Usuario.java - Reader profiles
src/main/java/br/gov/biblioteca_ag_backend/service/DadosLeitorService.java
API and Persistence
- Catalog endpoints
src/main/java/br/gov/biblioteca_ag_backend/controller - Book records
src/main/java/br/gov/biblioteca_ag_backend/repository/LivroRepository.java - Circulation endpoints
src/main/java/br/gov/biblioteca_ag_backend/controller - Loan records
src/main/java/br/gov/biblioteca_ag_backend/repository/EmprestimoRepository.java - Reservation records
src/main/java/br/gov/biblioteca_ag_backend/repository/ReservaRepository.java - User endpoints
src/main/java/br/gov/biblioteca_ag_backend/controller - User records
src/main/java/br/gov/biblioteca_ag_backend/repository/UsuarioRepository.java - Request validation
src/main/java/br/gov/biblioteca_ag_backend/validation/RequestValidator.java
Other components
- Library staff
- Relational database
Connections 19
- Library staff → Catalog endpoints: submits requests
- Catalog endpoints → Book management: routes to
src/main/java/br/gov/biblioteca_ag_backend/controller/LivroController.java - Book management → Book records: reads and writes
src/main/java/br/gov/biblioteca_ag_backend/service/LivroService.java - Book management → Cover storage: stores cover
src/main/java/br/gov/biblioteca_ag_backend/service/LivroService.java - Book management → Authors and categories: links authors
src/main/java/br/gov/biblioteca_ag_backend/service/LivroService.java - Book records → Relational database: persists entities
src/main/java/br/gov/biblioteca_ag_backend/repository/LivroRepository.java - Library staff → Circulation endpoints: submits requests
- Circulation endpoints → Loan operations: routes to
src/main/java/br/gov/biblioteca_ag_backend/controller/EmprestimoController.java - Loan operations → Loan records: queries loans
src/main/java/br/gov/biblioteca_ag_backend/service/EmprestimoService.java - Loan records → Relational database: persists entities
src/main/java/br/gov/biblioteca_ag_backend/repository/EmprestimoRepository.java - Loan lifecycle → Physical copies: releases copy
src/main/java/br/gov/biblioteca_ag_backend/model/Emprestimo.java - Library staff → Circulation endpoints: requests reservation
- Reservations → Reservation records: queries reservations
src/main/java/br/gov/biblioteca_ag_backend/service/ReservaService.java - Reservation records → Relational database: persists entities
src/main/java/br/gov/biblioteca_ag_backend/repository/ReservaRepository.java - Library staff → User endpoints: submits requests
- User endpoints → User management: routes to
src/main/java/br/gov/biblioteca_ag_backend/controller/UsuarioController.java - User management → User records: accesses records
src/main/java/br/gov/biblioteca_ag_backend/service/UsuarioService.java - User records → Relational database: persists entities
- Request validation → Catalog endpoints: validates input
src/main/java/br/gov/biblioteca_ag_backend/controller/LivroController.java