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

全局异常统一处理专项测试

20 题 40 分钟 难度:★★

考察知识点

  • @ControllerAdvice注解原理与用法
  • @ExceptionHandler异常捕获机制
  • HandlerExceptionResolver接口
  • 自定义异常设计与处理
💡 参考答案在文末
判断题
1

@ControllerAdvice注解标注的异常处理器可以处理所有Controller抛出的异常,包括Filter和其他组件抛出的异常。

A

B

2

在普通Controller内部定义的@ExceptionHandler方法只能处理当前Controller抛出的异常,不能处理其他Controller的异常。

A

B

单选题
3

在Spring Boot项目中,自定义业务异常通常继承哪个类?

A

Error类

B

RuntimeException类

C

Exception类

D

Throwable类

4

统一响应体使用泛型设计(如ApiResponse),主要好处是什么?

A

增加代码复杂度

B

支持任意类型的数据封装,增强通用性

C

减少内存占用

D

提高编译速度

5

当Controller内部定义了@ExceptionHandler,同时@ControllerAdvice也定义了相同异常的处理方法,优先执行哪个?

A

@ControllerAdvice的方法

B

Controller内部的方法

C

随机执行

D

同时执行

6

@ControllerAdvice注解的主要作用是什么?

A

定义一个普通的Controller

B

定义全局的异常处理器和绑定器

C

定义数据访问层组件

D

定义业务逻辑层组件

7

@ExceptionHandler注解可以标注在方法上,用于处理哪些类型的异常?

A

只能处理RuntimeException

B

只能处理CheckedException

C

可以处理任意Exception类型

D

只能处理NullPointerException

8

当多个@ExceptionHandler可以处理同一异常时,Spring按照什么规则选择处理器?

A

随机选择

B

选择方法名最短的

C

选择异常类型最精确匹配的

D

选择最先定义的方法

9

统一响应体封装的主要目的是什么?

A

减少代码量

B

提供一致的API响应格式,便于前端统一处理

C

提高数据库性能

D

增加服务器负载

10

Spring Boot默认提供的错误处理端点是什么,访问它会显示错误详情?

A

/error

B

/exception

C

/fail

D

/problem

11

Spring MVC处理异常的核心接口是什么,它负责解析异常并返回相应的ModelAndView?

A

HandlerInterceptor

B

HandlerExceptionResolver

C

ViewResolver

D

HandlerMapping

12

自定义业务异常通常携带错误码(code)字段,其主要目的是什么?

A

只是为了美观

B

区分不同类型的业务错误,便于前端处理

C

用于日志记录的唯一标识

D

用于数据库存储

多选题
13

自定义业务异常类通常应该包含哪些字段?

A

错误码(code)

B

错误消息(message)

C

HTTP状态码(status)

D

发生时间(timestamp)

14

统一响应体通常包含哪些字段?

A

状态码(code)

B

提示消息(message)

C

业务数据(data)

D

时间戳(timestamp)

15

@ExceptionHandler标注的方法可以接收哪些类型的参数?

A

Exception异常对象

B

HttpServletRequest请求对象

C

HttpServletResponse响应对象

D

Model模型对象

16

Spring Boot中实现全局异常处理的方式有哪些?

A

使用@ControllerAdvice注解

B

使用@ExceptionHandler注解

C

实现HandlerExceptionResolver接口

D

配置SimpleMappingExceptionResolver

填空题
17

Spring的@Transactional注解默认只对____________类型的异常进行事务回滚,如果需要对所有Exception回滚,需要配置rollbackFor属性,如@Transactional(rollbackFor = ____________)。

18

@ControllerAdvice注解用于定义全局异常处理器,如果需要返回JSON格式数据,应使用____________注解,它是@ControllerAdvice和____________的组合注解。

19

Spring Boot默认的错误处理端点路径是____________,可以通过配置server.error.path属性修改为自定义路径。默认的错误控制器类名是____________

20

统一响应体中,成功响应的状态码通常为____________,失败响应的状态码根据错误类型不同,如参数校验错误为____________,资源不存在为____________,系统内部错误为500。

参考答案
1.错误 2.正确 3.B 4.B 5.B 6.B 7.C 8.C 9.B 10.A 11.B 12.B 13.A;B;C 14.A;B;C;D 15.A;B;C;D 16.A;B;C;D 17.RuntimeException;Exception.class 18.@RestControllerAdvice;@ResponseBody 19./error;BasicErrorController 20.200;400;404
想在手机上练习这套试卷?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一套试卷 SpringBoot高级技能认证
下一套试卷 → 内嵌容器深度调优专项测试
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码