I controller in un'applicazione Spring Boot gestiscono le richieste HTTP provenienti dai client, coordinando le operazioni tra le view e i servizi. Sono responsabili di gestire le richieste degli utenti e di restituire le risposte appropriate.
I controller vengono utilizzati per definire le operazioni disponibili nell'applicazione e per gestire le richieste degli utenti. Possono essere annotati con @Controller o @RestController per indicare che si tratta di componenti gestiti da Spring.
Ecco un esempio di definizione di un controller in Spring Boot:
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/api/users")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/{id}")
public User getUserById(@PathVariable Long id) {
return userService.getUserById(id);
}
}
In questo esempio, UserController è un controller REST che gestisce le richieste relative agli utenti e chiama il metodo getUserById del servizio UserService per recuperare un utente in base all'ID.
I controller sono componenti essenziali nelle applicazioni Spring Boot per gestire le richieste degli utenti e indirizzarle ai servizi appropriati. È importante progettare e organizzare i controller in modo efficace per garantire un'interazione fluida e efficiente con l'applicazione.