全部学科
NodeJS全栈
nodejs
Python全栈
python
小程序首页

自定义处理器与适配器专项测试

20 题 60 分钟 难度:

考察知识点

  • Handler接口设计与实现
  • HttpRequestHandler处理器
  • SimpleControllerHandlerAdapter
  • RequestMappingHandlerAdapter原理
  • HandlerMethodArgumentResolver
  • HandlerMethodReturnValueHandler
1
单选题

自定义拦截器需要实现哪个接口?

A

Filter

B

HandlerInterceptor

C

WebMvcConfigurer

D

InterceptorRegistry

2
多选题

实现自定义拦截器并注册到SpringMVC的正确步骤有哪些?

A

创建类实现HandlerInterceptor接口

B

在preHandle方法中实现拦截逻辑

C

创建@Configuration类实现WebMvcConfigurer接口

D

在addInterceptors方法中通过InterceptorRegistry注册拦截器

3
填空题

注册拦截器时,通过______________方法添加拦截器实例,通过_______________设置拦截路径(如"/**"),通过___________________排除不需要拦截的路径(如"/login"),可通过______方法设置拦截器执行顺序。

4
单选题

自定义异常解析器需要实现哪个接口?

A

ExceptionHandler

B

HandlerExceptionResolver

C

ControllerAdvice

D

ErrorResolver

5
多选题

自定义HandlerExceptionResolver的实现方式有哪些?

A

直接实现HandlerExceptionResolver接口

B

继承AbstractHandlerExceptionResolver抽象类

C

使用@ExceptionHandler注解配合@ControllerAdvice

D

实现Ordered接口设置解析优先级

6
填空题

自定义异常解析器实现HandlerExceptionResolver接口时,需要实现________________方法,该方法接收_________异常对象,返回____________表示异常已处理,返回______表示该解析器无法处理此异常。

7
单选题

自定义HttpMessageConverter需要实现哪个接口?

A

MessageConverter

B

HttpMessageConverter

C

Converter<T,S>

D

MediaTypeConverter

8
多选题

自定义HttpMessageConverter注册到SpringMVC的正确方式有哪些?

A

通过WebMvcConfigurer的configureMessageConverters方法添加

B

通过WebMvcConfigurer的extendMessageConverters方法扩展

C

直接使用@Bean注解注入HttpMessageConverter

D

通过RequestMappingHandlerAdapter的setMessageConverters方法设置

9
填空题

自定义HttpMessageConverter时,_______方法判断是否支持将请求体转换为对象,________方法判断是否支持将对象写入响应体,______________________方法返回支持的媒体类型列表,如________________表示JSON格式。

10
单选题

自定义参数解析器需要实现哪个接口?

A

ArgumentResolver

B

HandlerMethodArgumentResolver

C

ParameterResolver

D

MethodArgumentProcessor

11
多选题

自定义HandlerMethodArgumentResolver的实现要点有哪些?

A

在supportsParameter中判断参数类型或注解

B

在resolveArgument中实现具体的参数解析逻辑

C

通过WebMvcConfigurer的addArgumentResolvers方法注册

D

可以结合自定义注解标记需要特殊解析的参数

12
填空题

自定义参数解析器实现HandlerMethodArgumentResolver接口时,_________________方法接收_______________对象判断是否支持解析,返回______表示支持,_______________方法执行实际的参数解析并返回参数值对象。

13
判断题

自定义参数解析器注册后,会添加到默认解析器列表的末尾,因此如果默认解析器已经支持某种参数类型,自定义解析器不会被执行。

A

B

14
单选题

自定义返回值处理器需要实现哪个接口?

A

ReturnValueHandler

B

HandlerMethodReturnValueHandler

C

ResultProcessor

D

ResponseHandler

15
多选题

自定义HandlerMethodReturnValueHandler的实现要点有哪些?

A

在supportsReturnType中判断返回值类型或方法注解

B

在handleReturnValue中处理返回值并设置ModelAndViewContainer

C

通过WebMvcConfigurer的addReturnValueHandlers方法注册

D

可以处理特殊格式的响应如CSV导出、PDF生成等

16
填空题

自定义返回值处理器实现HandlerMethodReturnValueHandler接口时,__________________方法判断是否支持该返回值类型,_________________方法处理返回值。如果需要直接写入响应体而不渲染视图,应设置___________________________________属性为true。

17
多选题

RequestResponseBodyMethodProcessor同时实现了HandlerMethodArgumentResolver和HandlerMethodReturnValueHandler接口,以下关于它的说法正确的是?

A

作为参数解析器处理@RequestBody注解的参数

B

作为返回值处理器处理@ResponseBody注解的返回值

C

使用HttpMessageConverter完成序列化和反序列化

D

可以自定义扩展以支持特殊的请求/响应格式

18
单选题

自定义HandlerMapping的最佳实践是继承哪个类?

A

HandlerMapping

B

AbstractHandlerMapping

C

RequestMappingHandlerMapping

D

SimpleUrlHandlerMapping

19
多选题

自定义HandlerMapping的应用场景有哪些?

A

基于数据库配置动态路由URL到Handler

B

基于租户ID或用户角色路由到不同的Handler

C

支持特殊的URL匹配规则如正则表达式匹配

D

实现A/B测试功能路由到不同版本的处理逻辑

20
填空题

继承AbstractHandlerMapping自定义HandlerMapping时,需要实现__________________方法获取Handler对象,该方法返回______类型的Handler。设置______属性可以控制HandlerMapping的查找顺序,数值越______优先级越高。

← 上一个试卷 文件上传下载进阶专项测试
下一个试卷 → 请求响应与数据返回专项测试

📝 发现内容有误?点击此处直接编辑

想参加完整模拟考试?
小程序提供计时考试、自动评分和详细解析

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库