4. 不定参数入参
1.非JSON格式入参
(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE) public ResultDTO initDoctorConfig( User param) { do something... } (value = "/init", produces = MediaType.APPLICATION_JSON_VALUE) public ResultDTO initDoctorConfig(int id) { do something... } (value = "/init", produces = MediaType.APPLICATION_JSON_VALUE) public ResultDTO initDoctorConfig( int id) { do something... } (value = "/init", produces = MediaType.APPLICATION_JSON_VALUE) public ResultDTO initDoctorConfig( int id) { do something... }
2.JSON入参
2.1 单个或多个独立参数
(value = "/order/detail", produces = MediaType.APPLICATION_JSON_VALUE) public ResultDTO getInfo( JSONObject jsonParams) { long id = jsonParams.getLong("id"); String name = jsonParams.getString("name"); }
2.2 封装参数
(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE) public ResultDTO initConfig( RequestParam param) { return initService.initConfig(param); }
其中封装入参对象就是一个包含各入参函数对象的Object
这里同步做了数据校验,可忽略也可在其项目参考,其中包资源
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
public class RequestParam { private long id; (message = "姓名不能为空") private String name; (message = "年龄不能为空") private String age; }