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

请求接收与参数绑定专题

专题说明

本专题全面讲解SpringMVC请求参数接收与自动绑定机制,覆盖基本类型、POJO对象、数组、集合、日期等各类参数绑定场景。

学习目标

  1. 掌握基本类型参数的接收与绑定
  2. 理解POJO对象自动绑定机制
  3. 熟练处理数组与集合参数绑定
  4. 掌握日期类型参数的自定义转换

学习内容

  • 基本类型参数绑定
  • POJO对象参数绑定
  • 数组与集合参数绑定
  • 日期类型参数处理
  • 自定义类型转换器

学习建议

理解SpringMVC参数绑定的底层原理,结合实际业务场景掌握各种参数绑定技巧。

📝 配套习题(20 题)

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

当@RequestParam的required属性设置为false时,如果请求中没有该参数,方法参数值将为null(如果没有设置defaultValue)。

A

B

2

SpringMVC中,@PostMapping注解相当于@RequestMapping(method=RequestMethod.POST),专门用于处理POST请求。

A

B

3

RESTful风格中,同一个URL配合不同的HTTP方法可以表示不同的操作,如GET /user/123表示获取用户,DELETE /user/123表示删除用户。

A

B

4

如果控制器方法参数名与请求参数名一致,SpringMVC可以自动进行参数绑定,无需使用@RequestParam注解。

A

B

5

当使用POJO对象作为控制器方法参数时,请求参数名需要与POJO的属性名一致,且POJO类必须提供对应的setter方法才能完成自动绑定。

A

B

单选题
6

RESTful风格API中,获取用户信息的URL通常设计为哪种形式?

A

GET /getUser?id=123

B

GET /user/123

C

POST /user?id=123

D

GET /user.action?method=get&id=123

7

SpringMVC中,@GetMapping注解与@RequestMapping注解的关系是什么?

A

@GetMapping是@RequestMapping的派生注解,限定为GET请求

B

@GetMapping与@RequestMapping完全相同

C

@GetMapping只能标注在类上

D

@GetMapping是新增的独立注解

8

当请求中包含多个同名参数(如ids=1&ids=2&ids=3)时,控制器方法可以使用哪种类型来接收?

A

只能使用String类型

B

可以使用数组类型如String[]或Integer[]

C

只能使用单个String类型

D

只能使用Map类型

9

在RESTful风格的URL中,如"/user/{id}",使用@PathVariable获取id值时,以下哪种写法是正确的?

A

@PathVariable String id

B

@PathVariable("id") Integer id

C

@RequestParam("id") Integer id

D

@RequestHeader("id") Integer id

10

@RequestParam注解可以绑定哪些类型的数据?

A

只能绑定String类型

B

可以绑定基本类型及其包装类、String、数组、集合

C

只能绑定基本类型

D

只能绑定POJO对象

11

SpringMVC中用于参数绑定的注解不包括以下哪个?

A

@RequestParam

B

@PathVariable

C

@RequestBody

D

@RequestMapping

12

当控制器方法参数为POJO对象时,SpringMVC如何进行参数绑定?

A

必须使用@RequestBody注解

B

必须使用@RequestParam注解

C

自动将请求参数绑定到POJO的属性上

D

需要手动解析请求参数

多选题
13

关于@PathVariable注解的使用,以下说法正确的是?

A

可以绑定基本类型及其包装类

B

可以绑定String类型

C

可以使用required属性设置是否必需

D

只能用于POST请求

14

关于POJO参数绑定,以下说法正确的是?

A

请求参数名需与POJO属性名一致

B

POJO类需要提供setter方法

C

支持嵌套对象的属性绑定

D

必须使用@RequestParam注解

15

@RequestParam注解支持以下哪些属性配置?

A

value - 指定请求参数名

B

required - 设置是否必需

C

defaultValue - 设置默认值

D

method - 指定请求方法

16

SpringMVC支持RESTful风格的哪些特性?

A

使用@PathVariable获取路径变量

B

使用@GetMapping/@PostMapping等派生注解

C

使用@ResponseBody返回JSON数据

D

使用@RestController简化REST控制器开发

填空题
17

当控制器方法参数为POJO对象时,SpringMVC会自动将____________绑定到POJO的____________上,要求参数名与属性名____________,且POJO类需提供setter方法。这种绑定方式不需要任何注解。

18

在RESTful风格的URL设计中,如"/user/{id}",其中____________是路径变量,使用____________注解获取其值。相比传统的"/user?id=123",RESTful风格使用____________传递参数,更加简洁规范。

19

RESTful风格URL设计中,使用____________传递参数而非查询参数,如"/user/123"。获取路径参数使用____________注解。HTTP方法表示操作语义:____________表示获取,POST表示创建,PUT表示更新,DELETE表示删除。

20

@RequestParam注解的____________属性用于指定请求参数名,____________属性设置参数是否必需(默认为____________),defaultValue属性设置参数不存在时的默认值。建议使用defaultValue避免参数缺失导致的异常。

参考答案
1.正确 2.正确 3.正确 4.正确 5.正确 6.B 7.A 8.B 9.B 10.B 11.D 12.C 13.A;B;C 14.A;B;C 15.A;B;C 16.A;B;C;D 17.请求参数;属性;一致 18.id;@PathVariable;路径 19.路径;@PathVariable;GET 20.value;required;true
想在手机上练习这套专题?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一个专题 请求响应与数据返回专题
下一个专题 → 跨域解决方案专题
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码