Controller – to komponent programu, który służy jako pośrednik między użytkownikiem a aplikacją, obsługujący zadania biznesowe.
Jest on jednym z trzech głównych elementów wzorca architektonicznego MVC (ang Model View Controller).
Przyjmuje on dane wejściowe od użytkownika i reaguje na jego poczynania, zarządzając aktualizacją modelu oraz odświeżeniem widoków.
W Springu klasyczne kontrolery można opatrzyć adnotacją @Controller. Jest to po prostu specjalizacja klasy @Component, która pozwala na automatyczne wykrywanie klas oznaczonych takimi adnotacjami poprzez skanowanie ścieżek klas.
