Spring MVC Basics
Spring MVC, архітектура MVC, DispatcherServlet, @Controller, ViewResolver, патерн Model-View-Controller
1Яка анотація перетворює клас Java на контролер Spring MVC?
Яка анотація перетворює клас Java на контролер Spring MVC?
Відповідь
@Controller позначає клас як контролер Spring MVC, що обробляє HTTP-запити. Це спеціалізація @Component, яка дозволяє component scanning автоматично виявляти контролер. @RestController поєднує @Controller і @ResponseBody для REST API, тоді як @RequestMapping визначає URL-мапінги, але сам по собі не оголошує контролер.
2Яка основна різниця між @Controller та @RestController?
Яка основна різниця між @Controller та @RestController?
Відповідь
@RestController поєднує @Controller і @ResponseBody, що означає, що всі методи автоматично повертають серіалізовані дані (JSON/XML) замість імен подань. З @Controller потрібно додавати @ResponseBody до кожного методу, щоб повертати дані. @RestController призначений для REST API, тоді як @Controller використовується для традиційних вебзастосунків із рендерингом подань.
3Як зіставити метод контролера з HTTP POST-запитом на URL /users?
Як зіставити метод контролера з HTTP POST-запитом на URL /users?
Відповідь
@PostMapping — це спеціалізована анотація для зіставлення методу з POST-запитами на конкретному URL. Це скорочення для @RequestMapping(method = RequestMethod.POST). Інші спеціалізовані анотації включають @GetMapping, @PutMapping, @DeleteMapping і @PatchMapping. Цей підхід читабельніший і лаконічніший за @RequestMapping з атрибутом method.
Як отримати змінну шляху з URL на кшталт /users/{id}?
Яку анотацію використовувати для автоматичної десеріалізації JSON з тіла HTTP-запиту?
+17 питань зі співбесід
Інші теми співбесід Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Логування за допомогою SLF4J та Logback
Spring Boot DevTools
Spring REST Controllers
Request & Response Handling
Обробка винятків
Bean Validation
Основи Spring Data JPA
Сутності JPA та зв'язки
Запити JPA
Spring Data Repositories
Основи Spring Security
Spring Boot Actuator
Модульне тестування з JUnit та Mockito
Тестування Spring Boot
Profiles та Environment
RestTemplate і WebClient
Async і Scheduling
Кешування зі Spring
Spring WebFlux (Reactive)
Транзакції Spring
Розширена автентифікація та авторизація
JWT та stateless-безпека
OAuth2 та Authorization Server
Spring Boot і Docker
Microservices зі Spring
Spring Cloud Config
Оптимізація продуктивності
GraalVM Native Images
Опануй Spring Boot для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно