不定参数入参

简介: /

1.非JSON格式入参

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

@PostMapping(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE)

public ResultDTO initDoctorConfig(@Valid User param) {

do something...

   }


@PostMapping(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE)

public ResultDTO initDoctorConfig(int id) {

do something...

   }


@PostMapping(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE)

public ResultDTO initDoctorConfig(@RequestParam int id) {

do something...

   }


@PostMapping(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE)

public ResultDTO initDoctorConfig(@RequestBody int id) {

do something...

   }

2.JSON入参
2.1  单个或多个独立参数

1

2

3

4

5

@PostMapping(value = "/order/detail", produces = MediaType.APPLICATION_JSON_VALUE)

public ResultDTO getInfo(@RequestBody JSONObject jsonParams) {

long id = jsonParams.getLong("id");

String name = jsonParams.getString("name");

}

2.2  封装参数

1

2

3

4

@PostMapping(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE)

public ResultDTO initConfig(@Valid @RequestBody RequestParam param) {

return initService.initConfig(param);

}

其中封装入参对象就是一个包含各入参函数对象的Object
这里同步做了数据校验,可忽略也可在其项目参考,其中包资源
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;

1

2

3

4

5

6

7

8

9

10

11

12

@Data

public class RequestParam {


private long id;


   @NotBlank(message = "姓名不能为空")

private String name;


   @NotBlank(message = "年龄不能为空")

private String age;


}

若有收获,就点个赞吧


相关文章
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
|
2月前
|
人工智能 Java 网络安全
|
2月前
|
Java 关系型数据库 MySQL
|
2月前
|
消息中间件 人工智能 NoSQL
|
2月前
|
Dubbo Java 应用服务中间件
|
2月前
|
存储 负载均衡 算法