首页/ 学科题库/ SpringBoot/ 全局异常统一处理专项测试
SpringBoot 模拟试卷

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

20 题 40 分钟 难度:★★
  • @ControllerAdvice注解原理与用法
  • @ExceptionHandler异常捕获机制
  • HandlerExceptionResolver接口
  • 自定义异常设计与处理

试卷习题(20 题)

参考答案在文末
判断题
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
想在手机上在线作答这套卷子?
使用微信 卷王开发者小程序/App,首页顶部扫一扫识别二维码,即可限时作答并自动判分。
了解产品 App
← 上一套 SpringBoot高级技能认证 下一套 → 内嵌容器深度调优专项测试