A Spring Boot backend API for a basic Flight Management System that designed to streamline the process of managing flight data.
- Admin
- Can add, delete and update flights and airports
- Manage user' account activation
- Can search flights and available airports
- User
- Can search flights and available airports
- Basic CRUD operations for flight and airport objects.
- Search API to filter flight data that enables advanced flight search capabilities based on various criteria such as departure place, destination place, departure and return dates.
- Authentication using JWT.
- Scheduled background jobs to update the flights database daily.
- Swagger Documentation.
- Integrated with PostgreSQL for robust data storage.
Note
To quickly test the scheduled jobs without waiting for daily execution, I configured the schedule to run every five minutes using the @Scheduled(fixedRate = 300000, initialDelay = 30000) annotation
.
End.