Applicazione web full stack per la gestione CRUD della tabella Categories del database Northwind, realizzata con Java Servlet, Hibernate, SQLite e una SPA in HTML/CSS/JavaScript che usa XMLHttpRequest.
- Visualizzazione completa delle categorie presenti nel database.
- Inserimento di una nuova categoria.
- Modifica di una categoria esistente.
- Eliminazione con conferma.
- Ricerca istantanea lato client.
- Interfaccia single-page con aggiornamento dinamico della tabella senza reload.
- API JSON centralizzata su
/api/categories.
- Java 17
- Maven
- Jakarta Servlet 6
- Hibernate ORM 6
- SQLite JDBC
- Gson
- HTML, CSS, JavaScript vanilla con
XMLHttpRequest
src/main/java/com/mycompany/progetto_finale/model/Category.java: entity Hibernate perCategories.src/main/java/com/mycompany/progetto_finale/dao/CategoryDao.java: operazioni CRUD.src/main/java/com/mycompany/progetto_finale/web/CategoryServlet.java: controller REST JSON.src/main/webapp/index.html: SPA principale.src/main/webapp/app.js: logica frontend asincrona.src/main/webapp/styles.css: interfaccia grafica responsive.src/main/webapp/northwind.db: database Northwind SQLite.
Restituisce tutte le categorie.
Restituisce la categoria con ID specificato.
Inserisce una nuova categoria.
Esempio body JSON:
{
"categoryName": "Seasonal Specials",
"description": "Prodotti stagionali e promozioni limitate."
}Aggiorna nome e descrizione della categoria indicata.
Elimina la categoria indicata.
- JDK 17 installato
- Apache Maven 3.9+
- Apache Tomcat 10.1+ oppure NetBeans/IDE compatibile con Jakarta EE 10
Apri un terminale nella cartella del progetto ed esegui:
mvn clean packageVerrà generato il file:
target/northwind-entity-manager.war
Puoi fare deploy in uno di questi modi:
- Copia
target/northwind-entity-manager.warnella cartellawebappsdi Tomcat. - Oppure importa il progetto nell'IDE e avvialo direttamente sul server Tomcat configurato.
Se deployato in Tomcat locale:
http://localhost:8080/northwind-entity-manager/
- Il database
northwind.dbe' incluso dentrosrc/main/webapp. - All'avvio della servlet, il percorso reale del file viene risolto automaticamente e passato a Hibernate.
- La tabella gestita e'
Categories, scelta per avere un CRUD pulito senza relazioni complesse comeOrders.
Per la consegna finale puoi inserire qui gli screenshot dei test effettuati:
docs/screenshots/home.pngdocs/screenshots/create.pngdocs/screenshots/update.pngdocs/screenshots/delete.png
Per la consegna consigliata:
- Esegui il deploy su Tomcat e verifica il CRUD.
- Cattura alcuni screenshot dell'app in funzione.
- Comprimi il progetto in
.zip. - Pubblica il contenuto anche su GitHub insieme a questo
README.md.