Spring MVC Basics
Spring MVC, architettura MVC, DispatcherServlet, @Controller, ViewResolver, pattern Model-View-Controller
1Quale annotazione trasforma una classe Java in un controller Spring MVC?
Quale annotazione trasforma una classe Java in un controller Spring MVC?
Risposta
@Controller contrassegna una classe come controller Spring MVC che gestisce le richieste HTTP. È una specializzazione di @Component e consente al component scanning di rilevare automaticamente il controller. @RestController combina @Controller e @ResponseBody per le API REST, mentre @RequestMapping definisce i mapping degli URL ma non dichiara un controller da solo.
2Qual è la differenza principale tra @Controller e @RestController?
Qual è la differenza principale tra @Controller e @RestController?
Risposta
@RestController combina @Controller e @ResponseBody, il che significa che tutti i metodi restituiscono automaticamente dati serializzati (JSON/XML) anziché nomi di view. Con @Controller, è necessario aggiungere @ResponseBody a ciascun metodo per restituire dati. @RestController è progettato per le API REST, mentre @Controller è usato per le applicazioni web tradizionali con rendering delle view.
3Come mappare un metodo del controller a una richiesta HTTP POST sull'URL /users?
Come mappare un metodo del controller a una richiesta HTTP POST sull'URL /users?
Risposta
@PostMapping è l'annotazione specializzata per mappare un metodo alle richieste POST su un URL specifico. È una scorciatoia per @RequestMapping(method = RequestMethod.POST). Altre annotazioni specializzate includono @GetMapping, @PutMapping, @DeleteMapping e @PatchMapping. Questo approccio è più leggibile e conciso rispetto a @RequestMapping con l'attributo method.
Come recuperare una variabile di percorso da un URL come /users/{id}?
Quale annotazione usare per deserializzare automaticamente il JSON dal corpo di una richiesta HTTP?
+17 domande da colloquio
Altri argomenti di colloquio Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging con SLF4J e Logback
Spring Boot DevTools
Spring REST Controllers
Request & Response Handling
Gestione delle eccezioni
Bean Validation
Fondamenti di Spring Data JPA
Entità JPA e relazioni
Query JPA
Spring Data Repositories
Fondamenti di Spring Security
Spring Boot Actuator
Test unitari con JUnit e Mockito
Testing in Spring Boot
Profiles e Environment
RestTemplate e WebClient
Async e Scheduling
Caching con Spring
Spring WebFlux (Reactive)
Transazioni Spring
Autenticazione e autorizzazione avanzate
JWT e sicurezza stateless
OAuth2 e Authorization Server
Spring Boot e Docker
Microservices con Spring
Spring Cloud Config
Ottimizzazione delle prestazioni
GraalVM Native Images
Padroneggia Spring Boot per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis