我的模型中有以下内容,如https://stackoverflow.com/a/34750537/148844
中所述@ApiModelProperty(required = true, dataType = "java.time.LocalDate")
@JsonFormat(pattern="yyyy-MM-dd")
private Date mCreatedAt;
但是Swagger仍将日期显示为带区域的日期时间。我也尝试过org.joda.time.LocalDate
。如何更改文档日期格式示例?
这是该属性的文档。
SpringFox-Swagger-UI 2.9.2
运行时,我在Swagger UI的顶部注意到了此错误。
错误
路径上的解析器错误./getTrackingDataByUserID.post.responses.200.schema.properties.items.items.properties.mCreatedAt.$ref
由于以下原因而无法解析引用:无法解析指针:/ definitions / LocalDate在文档中不存在
答案 0 :(得分:0)
您需要使用java.sql.Date
而不是java.time.LocalDate
。如果您对映射到什么内容感兴趣,请检查springfox.documentation.schema.Types
。这是完整的示例:
@JsonFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(dataType = "java.sql.Date")
private Date birthDate;
,它将生成以下内容:
properties: {
birthDate: {
type: "string",
format: "date"
}
}
以下是springfox.documentation.schema.Types
的相关内容:
private static final Map<Type, String> typeNameLookup = ImmutableMap.<Type, String>builder()
.put(Long.TYPE, "long")
.put(Short.TYPE, "int")
.put(Integer.TYPE, "int")
.put(Double.TYPE, "double")
.put(Float.TYPE, "float")
.put(Byte.TYPE, "byte")
.put(Boolean.TYPE, "boolean")
.put(Character.TYPE, "string")
.put(Date.class, "date-time")
.put(java.sql.Date.class, "date")
.put(String.class, "string")
.put(Object.class, "object")
.put(Long.class, "long")
.put(Integer.class, "int")
.put(Short.class, "int")
.put(Double.class, "double")
.put(Float.class, "float")
.put(Boolean.class, "boolean")
.put(Byte.class, "byte")
.put(BigDecimal.class, "bigdecimal")
.put(BigInteger.class, "biginteger")
.put(Currency.class, "string")
.put(UUID.class, "uuid")
.put(MultipartFile.class, "__file")
.build();