全部学科
Python全栈
python
NodeJS全栈
nodejs
📝 1 篇文章 21 道配套习题

MVC核心思想与执行流程专题

专题说明

本专题聚焦SpringMVC的核心设计理念与请求处理流程,帮助学习者理解MVC模式的本质和DispatcherServlet的协调机制。

学习目标

  1. 理解MVC设计模式的三层架构职责划分
  2. 掌握DispatcherServlet前端控制器的工作流程
  3. 熟悉SpringMVC九大核心组件的作用
  4. 理解请求从接收到响应的完整执行链路

学习内容

  • MVC设计模式核心概念
  • DispatcherServlet初始化与请求分发
  • HandlerMapping处理器映射机制
  • HandlerAdapter处理器适配器
  • ViewResolver视图解析器

学习建议

先理解MVC模式的架构思想,再深入分析SpringMVC的执行流程,建议结合源码调试加深理解。

📝 配套习题(21 题)

💡 参考答案在文末
判断题
1

SpringMVC是一个基于MVC设计模式的Web框架,它将Web应用程序分为模型、视图、控制器三层,实现了业务逻辑与展示逻辑的分离。

A

B

2

SpringMVC的执行流程中,如果Controller方法抛出异常,DispatcherServlet会将异常交给HandlerExceptionResolver处理。

A

B

3

Controller类中的方法可以直接注入Service、Repository等Spring Bean。

A

B

4

DispatcherServlet是一个Servlet,需要在web.xml中配置或在SpringBoot中自动注册才能生效。

A

B

单选题
5

ViewResolver的作用是什么?

A

解析请求参数

B

将视图名解析为具体的视图对象

C

执行Controller方法

D

处理请求异常

6

SpringMVC中,Controller的主要职责是什么?

A

处理数据库操作

B

渲染视图页面

C

接收请求并返回响应结果

D

配置应用程序参数

7

SpringMVC请求处理流程的入口点是哪个组件?

A

Controller

B

DispatcherServlet

C

HandlerMapping

D

ViewResolver

8

MVC设计模式中的三个核心角色分别是什么?

A

Model、View、Controller

B

Module、View、Component

C

Manager、View、Controller

D

Model、Validator、Controller

9

DispatcherServlet在SpringMVC中扮演什么角色?

A

数据访问对象

B

前端控制器

C

视图解析器

D

业务处理器

10

@RestController注解与@Controller注解的区别是什么?

A

@RestController只能用于REST API

B

@RestController相当于@Controller + @ResponseBody

C

@RestController不支持返回视图

D

以上都正确

11

HandlerMapping的作用是什么?

A

执行Controller方法

B

根据请求URL找到对应的Handler

C

渲染视图页面

D

处理请求异常

12

在SpringMVC中,标注一个类为Controller应该使用哪个注解?

A

@Component

B

@Controller

C

@Service

D

@Repository

多选题
13

SpringMVC请求处理流程中的主要组件有哪些?

A

DispatcherServlet

B

HandlerMapping

C

HandlerAdapter

D

ViewResolver

14

以下哪些是常用的ViewResolver实现?

A

InternalResourceViewResolver

B

ThymeleafViewResolver

C

FreeMarkerViewResolver

D

ContentNegotiatingViewResolver

15

以下哪些注解可以用于URL映射配置?

A

@RequestMapping

B

@GetMapping

C

@PostMapping

D

@RestController

16

DispatcherServlet初始化时会加载哪些核心组件?

A

HandlerMapping

B

HandlerAdapter

C

ViewResolver

D

HandlerExceptionResolver

17

Controller方法可以返回哪些类型的值?

A

String(视图名)

B

ModelAndView(视图名和模型数据)

C

void(直接写入响应或使用默认视图名)

D

Object(配合@ResponseBody转换为响应体)

18

SpringMVC相比传统Servlet开发的优势有哪些?

A

请求映射更简洁,使用注解配置

B

参数绑定自动化,无需手动解析

C

视图解析统一管理,支持多种模板

D

与Spring容器无缝集成,便于注入依赖

填空题
19

使用____________注解配置URL映射时,可以通过________________________属性指定路径,通过method属性指定HTTP方法类型(如GET、POST)。

20

配置InternalResourceViewResolver时,____________属性设置视图文件前缀路径(如"/WEB-INF/views/"),____________属性设置文件后缀(如".jsp")。当Controller返回视图名____________时,实际解析的视图路径为/WEB-INF/views/user.jsp。

21

SpringMVC请求处理流程:用户发起请求,首先由____________接收,然后通过____________查找对应的Controller方法,接着由____________执行Controller方法,最后由ViewResolver解析视图并渲染响应。

参考答案
1.正确 2.正确 3.正确 4.正确 5.B 6.C 7.B 8.A 9.B 10.D 11.B 12.B 13.A;B;C;D 14.A;B;C;D 15.A;B;C 16.A;B;C;D 17.A;B;C;D 18.A;B;C;D 19.@RequestMapping;value;path 20.prefix;suffix;user 21.DispatcherServlet;HandlerMapping;HandlerAdapter
想在手机上练习这套专题?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
下一个专题 → MVC核心源码执行流程专题
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码