Spring MVC (Model-View-Controller) – это популярный фреймворк, созданный на базе Spring Framework. Он предоставляет гибкую и мощную архитектуру для разработки веб-приложений.
Проверьте, насколько хорошо вы разбираетесь в Spring MVC с помощью этой викторины с вопросами и вариантами ответов.
1. Какая аннотация используется для привязки параметра метода к заголовку запроса?
a) @RequestHeader
b) @Header
c) @BindHeader
d) @HTTPHeader
Ответ:
a) @RequestHeader
Объяснение:
Аннотация @RequestHeader
в Spring Framework применяется для связывания параметра метода с заголовком запроса. Она позволяет получать доступ к значениям конкретных заголовков запроса, что является полезным при обработке HTTP-запросов в методах контроллера.
2. Как получить доступ к параметрам запроса в методе контроллера в Spring MVC?
a) С помощью аннотации @RequestParam
b) Обращаясь к ним напрямую из объекта HttpServletRequest
c) С помощью аннотации @PathVariable
d) Используя аннотацию @RequestHeader
Ответ:
a) С помощью аннотации @RequestParam
Объяснение:
В методе контроллера в Spring MVC вы можете получить доступ к параметрам запроса с помощью аннотации @RequestParam
. Эта аннотация связывает значение параметра запроса с параметром метода.
3. Какова роль ViewResolver в Spring MVC ?
a) Управление зависимостями
b) Обработка исключений
c) Преобразование представлений в конкретные URL-адреса
d) Обработка параметров запроса
Ответ:
c) Преобразование представлений в конкретные URL-адреса
Объяснение:ViewResolver
в Spring MVC помогает связать имена представлений с реальными страницами (например, JSP), чтобы эффективно отображать содержимое веб-приложения.
4. Какая аннотация используется для связывания значений из URL с параметрами метода в Spring MVC?
a) @Regex
b) @PathVariable
c) @URIExpression
d) @MatchPattern
Ответ:
b) @PathVariable
Объяснение:
Аннотация @PathVariable
используется для извлечения значений из URI и передачи их в параметры метода контроллера.
5. Какой модуль Spring Framework обеспечивает интеграцию с RESTful-сервисами?
a) Spring RestController
b) Spring REST
c) Spring Web MVC
d) Spring WebFlux
Ответ:
c) Spring Web MVC
Объяснение:
Хотя @RestController
– это аннотация для создания REST-контроллеров, именно модуль Spring Web MVC обеспечивает интеграцию с RESTful-сервисами.
6. Какая аннотация указывает на то, что метод обрабатывает HTTP POST-запросы?
a) @HttpPost
b) @PostHandler
c) @RequestMapping(method = RequestMethod.POST)
d) @PostMapping
Ответ:
d) @PostMapping
Объяснение:@PostMapping
– это составная аннотация, которая служит сокращением для @RequestMapping(method = RequestMethod.POST).
7. Что делает аннотация @ResponseBody?
a) Отправляет возвращаемое значение метода в тело ответа
b) Связывает параметры метода с телом запроса
c) Запускает метод обработки исключений
d) Привязывает результат метода к представлению
Ответ:
a) Отправляет возвращаемое значение метода в тело ответа
Объяснение:
Аннотация @ResponseBody
сообщает контроллеру, что возвращаемое значение метода должно быть записано непосредственно в тело HTTP-ответа.
8. Как перенаправить на другой URL в Spring MVC?
a) “redirect:/url_path”
b) “forward:/url_path”
c) “goto:/url_path”
d) “move:/url_path”
Ответ:
a) “redirect:/url_path”
Объяснение:
В Spring MVC, чтобы осуществить перенаправление, необходимо просто вернуть строку, которая начинается с “redirect:” и затем указать путь к ресурсу.
9. Какая из следующих аннотаций используется для обработки многокомпонентной загрузки файлов?
a) @FileUpload
b) @MultipartFile
c) @RequestFile
d) @UploadPartClick to View Answer and Explanation
Ответ:
b) @MultipartFile
Объяснение:
Аннотация @MultipartFile
в Spring MVC используется для обработки многокомпонентной загрузки файлов.
10. Как указать, что метод контроллера должен возвращать JSON в качестве ответа?
a) @Produces(“application/json”)
b) @ResponseBody(type=”json”)
c) @ResponseFormat(“JSON”)
d) @RequestMapping(produces=”application/json”)
Ответ:
d) @RequestMapping(produces=”application/json”)
Объяснение:
Аннотация @RequestMapping
с атрибутом produces
, установленным на “application/json
“, указывает, что метод контроллера должен возвращать JSON в качестве ответа.
11. Что из следующего позволяет привязать значения полей модели к элементам формы в Spring MVC?
a) @FormEntity
b) @ModelEntity
c) @ModelAttribute
d) @BeanForm
Ответ:
c) @ModelAttribute
Объяснение:
В Spring MVC для связывания значений полей модели с элементами формы используется аннотация @ModelAttribute
.
12. Какой из следующих компонентов решает, какой метод контроллера будет вызван?
a) DispatcherServlet
b) Controller
c) HandlerMapping
d) ViewResolver
Ответ:
c) HandlerMapping
Объяснение:
Компонент HandlerMapping
решает, какой метод контроллера должен быть вызван в зависимости от входящего запроса.
13. Что делает аннотация @Valid в Spring MVC?
a) Гарантирует, что метод правильно переопределен
b) Запускает валидацию объекта
c) Гарантирует, что HTTP-запрос является правильным
d) Проверяет тип возвращаемого значения метода
Ответ:
b) Запускает валидацию объекта
Объяснение:
Аннотация @Valid
вызывает проверку параметров метода или полей объекта.
14. Какая аннотация используется для работы с CORS (Cross-Origin Resource Sharing) в Spring MVC?
a) @CrossOrigin
b) @CORSHandler
c) @EnableCORS
d) @CORSConfig
Ответ:
a) @CrossOrigin
Объяснение:
Аннотация @CrossOrigin
в Spring MVC используется для Cross-Origin Resource Sharing.
15. Какой Spring Boot Starter используется для разработки веб-приложений?
a) spring-boot-starter-web
b) spring-boot-starter-jdbc
c) spring-boot-starter-data
d) spring-boot-starter-app
Ответ:
a) spring-boot-starter-web
Объяснение:
spring-boot-starter-web используется для создания веб-приложений, в том числе RESTful, с помощью Spring MVC.
16. На каком уровне архитектуры приложения используется Spring MVC?
a) Уровень данных
b) Уровень бизнес-логики
c) Уровень представления
d) Уровень интеграции
Ответ:
c) Уровень представления
Объяснение:
Spring MVC используется на уровне представления для обработки веб-запросов и формирования ответов.
Заключение
Spring MVC – это мощный фреймворк, который упрощает разработку веб-приложений с использованием шаблона проектирования Model-View-Controller. Проверив свои знания с помощью этих вопросов с вариантами ответов, вы получили лучшее представление о концепциях Spring MVC.
Перевод статьи «Spring MVC Quiz – MCQ (Multiple Choice Questions)».