我有一个 swagger 的 java 客户端,它的 swagger.json 包括以下内容:
"updatedTime":{"type":"string","format":"date-time"}
This 2015 年的问题说将格式指定为 date-time
不使用 Joda DateTime
。对于我的客户,我希望将属性表示为 java.util.Date
而不是 Joda
表示。我尝试使用 -DdateLibrary=java8
,但这会阻止客户端在我使用以下命令生成我的客户端时使用 feign 生成器:
java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate -i http://localhost:8080/swagger.json -l java --library feign -DdateLibrary=java8 -o samples/client/my-service/java
我如何指定 swagger 应该为响应对象使用什么数据类型?事实上,在服务上,该属性已经表示为 java.util.Date
。
最佳答案
我们可以处理 jackson serializatin 而不是处理 swagger 添加对 pom.xml 的依赖 com.fasterxml.jackson.datatype jackson -数据类型-jsr310 2.4.0 并在您的 ObjectMapper 上添加 JodaModule ObjectMapper 映射器 = new ObjectMapper(); mapper.registerModule(new JodaModule());
只需浏览链接:How to serialize Joda DateTime with Jackson JSON processer?
关于swagger-2.0 - Swagger Codegen Java 客户端日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42448951/