Programmazione Web con Java
Durata: 5 giorni
Obiettivi del corso: Al termine di questo corso i partecipanti avranno una solida comprensione dei concetti fondamentali di Spring Boot e saranno in grado di sviluppare applicazioni web dinamiche e robuste utilizzando Java.
Programma del corso
Giorno 1:
Introduzione a Spring Boot: vantaggi, caratteristiche principali (Starter, JAR eseguibili, autoconfigurazione).
Setup dell'ambiente di sviluppo: scelta della versione di Spring Boot, Spring Initializr, IDE.
Creazione della prima API REST: concetti di API e REST, @RestController, gestione delle richieste GET, POST, PUT, DELETE.
Interazione con il database: autoconfigurazione, dipendenze, salvataggio e recupero dati.
Configurazione e ispezione dell'applicazione: @Value, Configuration Properties, Actuator.
Giorno 2:
Definizione delle entità e supporto ai modelli.
Supporto ai repository e conversione da template a repository.
Servizi basati su template con Redis.
Servizi basati su repository con JPA (MySQL): inizializzazione progetto, sviluppo servizio, caricamento dati.
Giorno 3:
Servizi con database NoSQL (MongoDB): inizializzazione progetto, sviluppo servizio.
Introduzione a Spring MVC.
Interazione con l'utente: motori di template, creazione di un'applicazione web di esempio.
Comunicazione con WebSocket: cos'è WebSocket e come funziona.
Giorno 4:
Programmazione reattiva: introduzione, Project Reactor, Tomcat vs Netty.
Accesso reattivo ai dati con R2DBC e H2.
Comunicazione interprocesso reattiva con RSocket.
Testing delle applicazioni Spring Boot: unit testing, @SpringBootTest.
Giorno 5:
Sicurezza delle applicazioni: autenticazione, autorizzazione, Spring Security, OAuth2.
Deploy dell'applicazione: creazione del JAR eseguibile, deploy su container.
Creazione di immagini containerizzate ed esecuzione.
Materiale didattico
Presentazioni in PDF.
Codice sorgente degli esempi.
Esercizi pratici.
Prerequisiti
Conoscenza di base di Java.
Familiarità con i concetti di base del web (HTTP, REST).