How abdullahshahid01/rent-a-car-management-system works
Rent-a-Car Management System is a Java Swing desktop application for administering customers, vehicle owners, cars, and rental bookings. The user enters through the runner and login, then uses the main menu to reach record lists, searches, and add/update/remove forms. Booking operations connect customer and car records, track rent/return times, and determine car availability. Backend entity classes own their serialized-file persistence; the sampled booking code also reads car records to calculate availability. The source excerpts are partial, so unsampled screen-to-backend connections are shown only where supported by the visible code or direct entity responsibilities.
Main entry points: MainMenu.java Main menu · Booking.java Booking logic · Car.java Car records · Customer_Details.java Customer screens
Components 22
Application entry
- Runner
src/GUI/Runner.java - Login
src/GUI/Login.java - Main menu
src/GUI/MainMenu.java - Window host
src/GUI/Parent_JFrame.java
People and fleet
- Customer screens
src/GUI/Customer_Details.java - Owner screens
src/GUI/CarOwner_Details.java - Car screens
src/GUI/Car_Details.java - Customer forms
src/GUI/Customer_Add.java - Owner forms
src/GUI/CarOwner_Add.java - Car forms
src/GUI/Car_Add.java - Person base
src/BackendCode/Person.java - Customer records
src/BackendCode/Customer.java - Owner records
src/BackendCode/CarOwner.java - Car records
src/BackendCode/Car.java
Rental operations
- Booking screens
src/GUI/Booking_Details.java - Book and return
src/GUI/Booking_BookCar.java - Booking logic
src/BackendCode/Booking.java
Serialized records
- Customer.ser
Customer.ser - CarOwner.ser
CarOwner.ser - Car.ser
Car.ser - Booking.ser
Booking.ser
Other components
- Administrator
Connections 30
- Administrator → Runner: launches
- Runner → Login: opens
- Login → Window host: displays in
- Login → Main menu: enters after login
- Main menu → Window host: updates
- Main menu → Customer screens: opens
- Main menu → Owner screens: opens
- Main menu → Car screens: opens
- Main menu → Booking screens: opens
- Customer screens → Customer forms: dispatches
- Owner screens → Owner forms: dispatches
- Car screens → Car forms: dispatches
- Booking screens → Book and return: dispatches
- Customer screens → Customer records: reads and searches
- Customer screens → Booking logic: reads bookings
- Owner screens → Owner records: reads and searches
- Owner screens → Car records: reads cars
- Car screens → Car records: reads and searches
- Booking screens → Booking logic: reads and searches
- Customer forms → Customer records: saves changes
- Owner forms → Owner records: saves changes
- Car forms → Car records: saves changes
- Book and return → Booking logic: books or returns
- Customer records → Person base: extends
- Owner records → Person base: extends
- Customer records → Customer.ser: reads and writes
- Owner records → CarOwner.ser: reads and writes
- Car records → Car.ser: reads and writes
- Booking logic → Booking.ser: reads and writes
- Booking logic → Car records: reads for availability