swagger - 大摇大摆的多态性没有按预期工作
问题描述
我正在使用 springfox 2.9.2 版和 swagger 注释 1.5.x。ApiModel 注释支持使多态性工作所需的鉴别器、子类型和父属性,但我没有看到为启用多态性而生成的正确 apidocs。
这是我的注释代码。
@RestController
@RequestMapping("/api/vehicles")
public class VehicleController {
private static final Logger LOGGER = LoggerFactory.getLogger(VehicleController.class);
@PostMapping(consumes = {MediaType.APPLICATION_JSON_UTF8_VALUE})
void post(@RequestBody Vehicle anyVehicle) {
LOGGER.info("Vehicle : {}", anyVehicle);
}
}
@ApiModel(discriminator = "type", subTypes = {Car.class, Bike.class})
public class Vehicle {
String brand;
String type;
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
}
@ApiModel(parent = Vehicle.class)
public class Car extends Vehicle {
int noOfDoors;
boolean powerWindows;
public int getNoOfDoors() {
return noOfDoors;
}
public void setNoOfDoors(int noOfDoors) {
this.noOfDoors = noOfDoors;
}
public boolean isPowerWindows() {
return powerWindows;
}
public void setPowerWindows(boolean powerWindows) {
this.powerWindows = powerWindows;
}
}
@ApiModel(parent = Vehicle.class)
public class Bike extends Vehicle {
boolean pillion;
public boolean isPillion() {
return pillion;
}
public void setPillion(boolean pillion) {
this.pillion = pillion;
}
}
生成文档时,基本上显示了一个端点,该端点处理 POST 请求并将车辆作为模型。
我在这里所做的工作应该有效吗?有人可以指出我可以查看的 SpringFox 的工作示例吗?
解决方案
discriminator
Swagger UI 中尚不支持对。您可以关注这些问题以获取状态更新:
推荐阅读
- mysql - SQL - 计算重复行并获取这些值以设置另一列
- python - macos 11.5下用pip安装matplotlib
- android - 无法解决:customview-1.1.0
- ios - iOS:Xcode 未按 App 显示 CPU 使用率和内存
- amazon-web-services - 在 AWS AppSync / AWS Amplify 中保护 GraphQL 模型
- c# - 如何在 OnActionExecutionAsync ASP .Net Core 中记录 HTTP 请求和响应
- android - 如何以编程方式为android重新启动应用程序?
- ios - NSNotificationCenter 发布通知不起作用
- c# - 更改 asp 按钮行为
- mongodb - 所有嵌入文档都符合条件的 Mongoid 查询记录