【发布时间】:2019-02-08 15:25:24
【问题描述】:
我想知道是否有任何方法可以让 SpringFox 不显示在调用特定端点时不需要的某个实体的所有字段。
例如:
具有以下实体:
public class Car {
long id;
String name;
int wheels;
String type;
boolean canFly;
}
还有以下端点:
@RequestMapping(method = RequestMethod.GET,
produces = MediaType.APPLICATION_JSON_VALUE)
public Car get(@RequestParam(value = "carId", required = true) long projectId) {
return carService.get(carId);
}
@RequestMapping(method = RequestMethod.POST,
consumes = MediaType.APPLICATION_JSON_VALUE,
produces = MediaType.APPLICATION_JSON_VALUE)
public Car create(@RequestBody Car car) {
return carService.create(car);
}
@RequestMapping(method = RequestMethod.PUT,
consumes = MediaType.APPLICATION_JSON_VALUE,
produces = MediaType.APPLICATION_JSON_VALUE)
public Car update(@RequestBody Car car) {
return carService.update(car);
}
问题是在创建 Car 端点中只需要名称和车轮,但在文档中 Swagger-ui 显示所有字段就好像它们是必需的一样。我已经尝试过@JsonViews,但 Springfox 还没有处理它们。
有什么办法可以避免吗?
【问题讨论】:
标签: java spring swagger swagger-ui springfox