我们可以使用swagger-generater在模型变量上生成@JsonFormat吗?

时间:2019-03-29 21:24:04

标签: java spring-boot swagger swagger-2.0 swagger-codegen

我在yml文件中有一个变量

result = map(lambda x: [x['title'],x["firstname"],x["lastname"]],employees)
print(*["{} {} {}\n".format(a,b,c) for a,b,c in result], sep="")

Output:
Mr Jonathan Calderon
Mr Christopher Hansen
Mrs Isabella Dorsey
Ms Barbara Baker

我正在使用swagger-generater从yml生成Java代码。

它正在生成如下的startDate变量

startDate:
 type:string
 format:date

但是我需要如下

@JsonProperty("startDate")
private LocalDate startDate = null; 

有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

这里的问题是您尝试使用Java 8序列化LocalDate @JsonFormat而不使用正确的杰克逊模块/相关性。如果您看一下注释文档,它会说;

  

常见用途包括在其他表示形式之间进行选择-   例如,是否将日期序列化为数字(Java时间戳记)   或String(例如与ISO-8601兼容的时间值)-以及   使用pattern()属性配置确切的详细信息。

swagger codegen项目中没有有关如何指定特定于语言的配置选项的适当文档,我仅在以下票证中看到了这些配置选项;

https://github.com/swagger-api/swagger-codegen/issues/7795

根据该问题,您可以强制Swagger代码源使用java8 dateLibrary