Aerotrack è un sistema didattico sviluppato in Java per la gestione di aeroporti, voli, passeggeri e prenotazioni.
Il software include una GUI intuitiva realizzata con Java Swing, interazione con database MySQL, utility per import/export dati e test JUnit per garantire affidabilità e robustezza.
- Gestione Aeroporti: creazione, rimozione, ricerca, importazione/esportazione CSV.
- Gestione Voli: creazione, rimozione, ricerca (per codice, partenza, destinazione), assegnazione piste.
- Gestione Prenotazioni: creazione, cancellazione, ricerca per passeggero o volo.
- Gestione Passeggeri: inserimento automatico tramite prenotazione, ricerca.
- Calcolo Distanze: utility per calcolare la distanza tra aeroporti tramite formula di Haversine.
- Interfaccia Multi-tab: navigazione semplice tra le sezioni principali.
- Test JUnit: copertura delle classi modello e dei servizi fondamentali.
git clone https://github.com/IngSW-unipv/Aerotrack.git
- Apri il tuo IDE preferito.
- Importa come progetto Java standard.
- Installa MySQL e MySQL Workbench.
- Crea uno schema chiamato
aerotrack
. - Importa la struttura delle tabelle tramite il file
AEROTRACK.sql
presente nella root del progetto. - (Facoltativo) Importa dati di esempio tramite
TABELLE.sql
.
- Modifica il file
/properties/dbconfig.properties
con i parametri della tua istanza:db.url=jdbc:mysql://localhost:3306 db.username=<tuo_utente> db.password=<tua_password> db.driver=com.mysql.cj.jdbc.Driver
-
Avvia la classe:
it.unipv.ingsfw.aerotrack.test.MainApp
oppure esegui
MainApp
dal tuo IDE. -
Naviga tra i tab:
- Benvenuto: schermata introduttiva
- Aeroporti: gestione CRUD e CSV aeroporti
- Voli: gestione voli
- Prenotazioni: aggiunta/cancellazione e ricerca prenotazioni
- /models - Entità principali (Aeroporto, Volo, Prenotazione, Passeggero)
- /dao - Data Access Object per la persistenza su MySQL
- /services - Logica di business e validazione
- /view - Interfaccia grafica Swing (pannelli e frame)
- /utils - Utility di supporto (calcolo distanze, CSV)
- /test - Test manuali e automatici (JUnit)
- /properties - Configurazione database
- Aggiungi aeroporti tramite il tab Aeroporti.
- Crea un volo tra due aeroporti dal tab Voli.
- Prenota un passeggero su un volo dal tab Prenotazioni.
- Esporta/importa aeroporti in formato CSV.
Buon viaggio con Aerotrack!