How naghiyev/backend-session works
Task Management API is a Spring Boot REST service for user and task management. Clients register and retrieve users, create and query tasks (including by status or user), update or delete tasks, and authenticate to obtain a JWT for protected requests. Controllers delegate business operations to services, which use repositories backed by PostgreSQL; task lookups also use caching. README documents JWT and role-based security, caching, and the PostgreSQL-backed stack. The sampled sources confirm the controller, service, repository, JWT, and error-handling paths; security-filter wiring and cache configuration details are not fully shown.
Main entry points: TaskServiceImpl.java Task Service · JwtAuthFilter.java JWT Auth Filter · UserController.java User Controller · AuthController.java Auth Controller
Components 14
REST API
- Task Controller
src/main/java/az/training/taskmanagement/controller/TaskController.java - User Controller
src/main/java/az/training/taskmanagement/controller/UserController.java - Auth Controller
src/main/java/az/training/taskmanagement/controller/AuthController.java
Business Services
- Task Service
src/main/java/az/training/taskmanagement/service/impl/TaskServiceImpl.java - User Service
src/main/java/az/training/taskmanagement/service/impl/UserServiceImpl.java
Persistence
- Task Repository
src/main/java/az/training/taskmanagement/repository/TaskRepository.java - User Repository
src/main/java/az/training/taskmanagement/repository/UserRepository.java - PostgreSQL
JWT Security
- JWT Auth Filter
src/main/java/az/training/taskmanagement/security/JwtAuthFilter.java - Security Config
src/main/java/az/training/taskmanagement/security/SecurityConfig.java - JWT Service
src/main/java/az/training/taskmanagement/security/JwtService.java
Errors and Cache
- Exception Handler
src/main/java/az/training/taskmanagement/exception/GlobalExceptionHandler.java - Task Cache
Other components
- API Client
Connections 27
- API Client → Auth Controller: login request
- Auth Controller → JWT Service: generates token
- JWT Service → Auth Controller: returns token
- API Client → JWT Auth Filter: Bearer request
- JWT Auth Filter → JWT Service: validates token
- Security Config → JWT Auth Filter: configures filter
- JWT Auth Filter → Task Controller: dispatches request
- JWT Auth Filter → User Controller: dispatches request
- JWT Auth Filter → Auth Controller: dispatches request
- Task Controller → Task Service: delegates tasks
- User Controller → User Service: delegates users
- User Controller → Task Service: requests user tasks
- Task Service → Task Repository: reads and writes
- Task Service → User Repository: checks users
- User Service → User Repository: reads and writes
- Task Repository → PostgreSQL: persists tasks
- User Repository → PostgreSQL: persists users
- Task Service → Task Cache: caches task lookup
- Task Service → Task Cache: evicts on changes
- Task Service → Exception Handler: raises errors
- User Service → Exception Handler: raises errors
- Task Controller → Exception Handler: validation errors
- User Controller → Exception Handler: validation errors
- Task Controller → API Client: returns task data
- User Controller → API Client: returns user data
- Auth Controller → API Client: returns auth response
- Exception Handler → API Client: returns API error