# Spring MVC Basics (Spring Boot) > Spring MVC, архітектура MVC, DispatcherServlet, @Controller, ViewResolver, патерн Model-View-Controller - 20 питань зі співбесід - Mid-Level - [Питання зі співбесід: Spring Boot](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy.md) ## 1. Яка анотація перетворює клас Java на контролер Spring MVC? **Відповідь** @Controller позначає клас як контролер Spring MVC, що обробляє HTTP-запити. Це спеціалізація @Component, яка дозволяє component scanning автоматично виявляти контролер. @RestController поєднує @Controller і @ResponseBody для REST API, тоді як @RequestMapping визначає URL-мапінги, але сам по собі не оголошує контролер. ## 2. Яка основна різниця між @Controller та @RestController? **Відповідь** @RestController поєднує @Controller і @ResponseBody, що означає, що всі методи автоматично повертають серіалізовані дані (JSON/XML) замість імен подань. З @Controller потрібно додавати @ResponseBody до кожного методу, щоб повертати дані. @RestController призначений для REST API, тоді як @Controller використовується для традиційних вебзастосунків із рендерингом подань. ## 3. Як зіставити метод контролера з HTTP POST-запитом на URL /users? **Відповідь** @PostMapping — це спеціалізована анотація для зіставлення методу з POST-запитами на конкретному URL. Це скорочення для @RequestMapping(method = RequestMethod.POST). Інші спеціалізовані анотації включають @GetMapping, @PutMapping, @DeleteMapping і @PatchMapping. Цей підхід читабельніший і лаконічніший за @RequestMapping з атрибутом method. ## Ще 17 доступних питань - Як отримати змінну шляху з URL на кшталт /users/{id}? - Яку анотацію використовувати для автоматичної десеріалізації JSON з тіла HTTP-запиту? Зареєструйся безкоштовно: https://sharpskill.dev/uk/login ## Інші теми співбесід Spring Boot - [Spring Core - IoC & DI](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-core-ioc-di.md): 22 запитань, Junior - [Spring Boot Auto-Configuration](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-auto-configuration.md): 20 запитань, Junior - [Spring Boot Starters](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-starters.md): 18 запитань, Junior - [Application Properties & YAML](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/application-properties-yml.md): 16 запитань, Junior - [Логування за допомогою SLF4J та Logback](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/logging.md): 20 запитань, Junior - [Spring Boot DevTools](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-devtools.md): 15 запитань, Junior - [Spring REST Controllers](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-rest-controllers.md): 20 запитань, Mid-Level - [Request & Response Handling](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/request-response-handling.md): 20 запитань, Mid-Level - [Обробка винятків](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/exception-handling.md): 25 запитань, Mid-Level - [Bean Validation](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/bean-validation.md): 25 запитань, Mid-Level - [Основи Spring Data JPA](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-data-jpa-basics.md): 25 запитань, Mid-Level - [Сутності JPA та зв'язки](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/jpa-entities-relationships.md): 30 запитань, Mid-Level - [Запити JPA](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/jpa-queries.md): 30 запитань, Mid-Level - [Spring Data Repositories](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-data-repositories.md): 25 запитань, Mid-Level - [Основи Spring Security](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-security-basics.md): 25 запитань, Mid-Level - [Spring Boot Actuator](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-actuator.md): 20 запитань, Mid-Level - [Модульне тестування з JUnit та Mockito](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/testing-junit-mockito.md): 30 запитань, Mid-Level - [Тестування Spring Boot](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-testing.md): 30 запитань, Mid-Level - [Profiles та Environment](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/profiles-environment.md): 20 запитань, Mid-Level - [RestTemplate і WebClient](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/resttemplate-webclient.md): 24 запитань, Mid-Level - [Async і Scheduling](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/async-scheduling.md): 25 запитань, Mid-Level - [Кешування зі Spring](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/caching.md): 25 запитань, Mid-Level - [Spring WebFlux (Reactive)](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-webflux.md): 25 запитань, Mid-Level - [Транзакції Spring](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/transactions.md): 30 запитань, Senior - [Розширена автентифікація та авторизація](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/authentication-authorization.md): 30 запитань, Senior - [JWT та stateless-безпека](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/jwt-stateless-security.md): 20 запитань, Senior - [OAuth2 та Authorization Server](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/oauth2-authorization-server.md): 20 запитань, Senior - [Spring Boot і Docker](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-boot-docker.md): 19 запитань, Senior - [Microservices зі Spring](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/microservices-basics.md): 25 запитань, Senior - [Spring Cloud Config](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-cloud-config.md): 19 запитань, Senior - [Оптимізація продуктивності](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/performance-optimization.md): 30 запитань, Senior - [GraalVM Native Images](https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/graalvm-native-images.md): 20 запитань, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/uk/technologies/spring-boot/pytannia-spivbesidy/spring-mvc-basics