全部学科
Python全栈
python
NodeJS全栈
nodejs

容器级WEB组件扩展专项测试

20 题 60 分钟 难度:★★★

考察知识点

  • WebMvcConfigurer接口扩展
  • HandlerMapping自定义注册
  • HandlerAdapter自定义配置
  • ViewResolver自定义扩展
  • Converter与Formatter注册
  • ArgumentResolver参数解析扩展
💡 参考答案在文末
判断题
1

AbstractHandlerMapping抽象类提供了拦截器注册的基础实现,自定义HandlerMapping继承该类可以自动获得拦截器支持。

A

B

单选题
2

要扩展SpringMVC的HandlerMapping配置,应该使用哪个接口?

A

WebMvcConfigurer

B

HandlerMappingRegistry

C

RequestMappingHandler

D

MvcConfiguration

3

HandlerAdapter接口的handle方法返回什么对象?

A

String

B

ModelAndView

C

ResponseEntity

D

Object

4

SpringMVC中负责将请求参数字符串转换为目标类型的组件是什么?

A

HandlerMethodArgumentResolver

B

ConversionService

C

HttpMessageConverter

D

PropertyEditor

5

HandlerMapping接口的核心方法是什么?

A

getHandler(HttpServletRequest request)

B

handle(HttpServletRequest request, HttpServletResponse response)

C

resolveException(HttpServletRequest request, Exception ex)

D

convert(Object source, TypeDescriptor sourceType, TypeDescriptor targetType)

6

拦截器(Interceptor)和过滤器(Filter)的主要区别是什么?

A

拦截器属于Servlet规范,过滤器属于SpringMVC

B

拦截器可以访问Spring容器Bean,过滤器不能

C

过滤器只能拦截特定URL,拦截器可以拦截所有请求

D

过滤器在拦截器之前执行

7

SpringMVC中,DispatcherServlet关联的WebApplicationContext是如何创建的?

A

由ServletContextListener创建

B

由FrameworkServlet.initServletBean()方法创建

C

由DispatcherServlet.init()方法创建

D

由SpringBoot自动创建

8

以下哪个是SpringMVC处理@ExceptionHandler注解的核心组件?

A

ResponseStatusExceptionResolver

B

ExceptionHandlerExceptionResolver

C

DefaultHandlerExceptionResolver

D

SimpleMappingExceptionResolver

多选题
9

WebMvcConfigurer接口中提供了哪些与HandlerMapping相关的配置方法?

A

configurePathMatch()

B

addInterceptors()

C

addViewControllers()

D

extendHandlerExceptionResolvers()

10

关于SpringMVC容器体系结构,以下说法正确的是?

A

Root WebApplicationContext由ContextLoaderListener初始化

B

Servlet WebApplicationContext由DispatcherServlet初始化

C

Servlet容器可以访问Root容器中的Bean

D

Root容器可以访问Servlet容器中的Bean

11

以下哪些场景适合使用拦截器而不是过滤器?

A

权限校验

B

日志记录

C

获取Spring容器中的Bean进行业务处理

D

跨域CORS处理

12

SpringMVC中实现自定义类型转换的方式有哪些?

A

实现Converter<S,T>接口

B

实现ConverterFactory<S,T>接口

C

实现GenericConverter接口

D

继承PropertyEditorSupport类

13

RequestMappingHandlerMapping的内部数据结构MappingRegistry包含哪些信息?

A

URL路径到HandlerMethod的映射

B

请求方法(GET/POST等)约束

C

请求参数条件

D

请求头条件

14

以下关于HandlerExceptionResolver的说法,哪些是正确的?

A

ExceptionHandlerExceptionResolver处理@ExceptionHandler注解

B

ResponseStatusExceptionResolver处理@ResponseStatus注解

C

DefaultHandlerExceptionResolver处理Spring标准异常

D

所有异常解析器都实现自同一个接口

15

RequestMappingHandlerAdapter的invokeHandlerMethod方法中执行了哪些关键操作?

A

创建InvocableHandlerMethod封装Handler方法

B

创建WebDataBinderFactory进行数据绑定

C

创建ModelFactory处理@ModelAttribute和@SessionAttributes

D

调用ServletInvocableHandlerMethod.invokeAndHandle()

填空题
16

SpringMVC容器初始化时,Root WebApplicationContext的配置文件路径通过____________参数指定,由____________监听器初始化。Servlet WebApplicationContext的配置类通过____________注解标注,在SpringBoot中由DispatcherServletAutoConfiguration自动配置。

17

自定义HandlerMapping可以通过实现____________接口或继承____________抽象类。注册自定义HandlerMapping时,需要设置____________属性决定查找顺序,数值越小优先级越高。

18

SpringMVC数据绑定过程中,____________类负责将请求参数绑定到目标对象,它使用____________进行类型转换,使用____________进行数据校验,绑定结果存储在BindingResult对象中。

19

配置拦截器需要通过WebMvcConfigurer接口的____________方法添加,可以设置____________指定拦截路径,设置____________排除路径。配置过滤器需要实现Filter接口,并通过FilterRegistrationBean注册到Servlet容器。

20

自定义异常解析器需要实现____________接口,实现____________方法。如果要将自定义异常解析器添加到SpringMVC中,可以通过实现____________接口的extendHandlerExceptionResolvers方法或配置@Bean注入。

参考答案
1.正确 2.A 3.B 4.B 5.A 6.D 7.B 8.B 9.A;B;C 10.A;B;C 11.A;B;C 12.A;B;C;D 13.A;B;C;D 14.A;B;C;D 15.A;B;C;D 16.contextConfigLocation;ContextLoaderListener;@Configuration 17.HandlerMapping;AbstractHandlerMapping;order 18.DataBinder;ConversionService;Validator 19.addInterceptors;addPathPatterns;excludePathPatterns 20.HandlerExceptionResolver;resolveException;WebMvcConfigurer
想在手机上练习这套试卷?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一套试卷 全局异常统一处理专项测试
下一套试卷 → 常用注解基础使用专项测试
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码