Spring Boot

Spring REST Controllers

API REST con @RestController, @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, ResponseEntity

20 domande da colloquio·
Mid-Level
1

Qual è la differenza principale tra @RestController e @Controller?

Risposta

@RestController è un'annotazione composita che combina @Controller e @ResponseBody. Questo significa che tutti i metodi di un @RestController restituiscono automaticamente dati serializzati (JSON/XML) invece di risolvere una view. @RestController è ideale per creare API REST, mentre @Controller viene usato per le applicazioni web tradizionali con view HTML.

2

Qual è il ruolo dell'annotazione @RequestBody in un metodo REST?

Risposta

@RequestBody indica a Spring di deserializzare il corpo della richiesta HTTP (tipicamente JSON o XML) in un oggetto Java. Spring usa un HttpMessageConverter (come Jackson per JSON) per eseguire questa conversione automaticamente. Questo è essenziale per ricevere dati complessi nelle richieste POST o PUT.

3

Quale annotazione dovrebbe essere usata per mappare una richiesta HTTP DELETE?

Risposta

@DeleteMapping è un'annotazione specializzata introdotta in Spring 4.3 per mappare le richieste HTTP DELETE in modo conciso. È una scorciatoia per @RequestMapping(method = RequestMethod.DELETE). Spring fornisce annotazioni simili per ogni metodo HTTP: @GetMapping, @PostMapping, @PutMapping, @PatchMapping.

4

Come estrarre una variabile di percorso dall'URL in Spring REST?

5

Qual è il vantaggio di usare ResponseEntity<T> invece di restituire direttamente un oggetto?

+17 domande da colloquio

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