Swagger-codegen生成具有Map <string,list <currencyexchangeratedto =“ =” >>而不是Map <integer,list <currencyexchangeratedto =“” >>的类

时间:2019-03-08 10:57:23

标签: java swagger-codegen

我有一个类似下一个的Spring控制器方法:

    public ResponseDto<Map<Integer, List<CurrencyExchangeRateDto>>> getCurrencyExchangeRatesForClients(@RequestParam("client-ids") List<Integer> clientIds) {
        ...
        return responseDto;
    }

实施细节被省略。

我的ResponseDto类如下:

public class ResponseDto<T> extends BaseResponse implements IResponse {

    private T data;

    public ResponseDto(int errorCode, String errorMessage, boolean isTechnicalError) {
        this.errorCode = errorCode;
        this.errorMessage = errorMessage;
        this.isTechnicalError = isTechnicalError;
    }

    public ResponseDto(T data) {
        this.data = data;
    }
}

问题是,当我使用swagger-codegen作为data字段生成客户代码时,我得到Map<String, List<CurrencyExchangeRateDto>>而不是Map<Integer, List<CurrencyExchangeRateDto>>。如何使swagger-codegen生成ResponseDtoMapintListCurrencyExchangeRateDto类,数据字段为Map<Integer, List<CurrencyExchangeRateDto>>

我生成的ResponseDtoMapintListCurrencyExchangeRateDto类:

public class ResponseDtoMapintListCurrencyExchangeRateDto {
  @JsonProperty("data")
  private Map<String, List<CurrencyExchangeRateDto>> data = null;
  ...
}

您会看到data字段的类型是Map<String, List<CurrencyExchangeRateDto>>,而不是预期的Map<Integer, List<CurrencyExchangeRateDto>>

0 个答案:

没有答案