使用@modelAttribute接收的参数,如何在swagger文档中映射成paramType为body
1,post请求中使用@modelAttribute接收参数,在swagger-ui文档中paramterType 是query,我想要得到body类型的
2,代码
@ApiModel("用户描述")
public class User {
@ApiModelProperty(value="用户名称",required=true)
private String name;
@ApiModelProperty(value="用户年龄",required=true)
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return "User [name=" + name + ", age=" + age + "]";
}
}
@ApiOperation(value = "GET BODY更新数据")
@RequestMapping(value = "model/{id}", method = RequestMethod.GET)
public ResponseEntity<ModelMap> modelResource(@ApiParam(value="用户",required=true) @ModelAttribute User user,
@ApiParam(name = "id", value = "编号", required = true) @PathVariable String id){
System.out.println(user);
ModelMap modelMap = new ModelMap();
modelMap.put("status", HttpStatus.OK.value());
modelMap.put("timestamps",System.currentTimeMillis());
modelMap.put("msg", HttpStatus.OK.getReasonPhrase());
modelMap.put("user", user);
modelMap.put("apiversion", 2);
return ResponseEntity.status(HttpStatus.OK).body(modelMap);
}
效果
想要的效果
不想改变@modelAttribute注解,而得到body类型的参数
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
@ModelAttribute User user 换成@RequestBody User user