Java 8 LocalDate大张旗鼓地显示 [英] Java 8 LocalDate displaying in swagger

查看:90
本文介绍了Java 8 LocalDate大张旗鼓地显示的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个DTO,其中包含Java 8 LocalDate类型的字段.使用Jackson批注,可以将format设置为ISO.DATE,并且一切正常.但是Swagger(我的版本为2. +)将LocalDate.class作为对象

I have a DTO which contains field of Java 8 LocalDate type. With Jackson annotations it's possible to set format to ISO.DATE and everything works good. But Swagger (I have version 2.+) see the LocalDate.class as object

LocalDate {
month (integer, optional),
year (integer, optional)
}

(是的,但是...)我想把它当作具有格式的字符串,因为它与util.Date一起工作. 我该怎么解决?

(That's true but...) I want to dipsay this as string with format as it works with util.Date. How can I solve it?

推荐答案

我遇到了同样的问题,所以我添加了

I was facing same problem, so I added

@Bean
public Docket docket() {
    return new Docket(DocumentationType.SWAGGER_2)
                .groupName("name")
                .directModelSubstitute(LocalDateTime.class, String.class)
                .directModelSubstitute(LocalDate.class, String.class)
                .directModelSubstitute(LocalTime.class, String.class)
                .directModelSubstitute(ZonedDateTime.class, String.class)
                .apiInfo(apiInfo())
                .select()
                .paths(paths())
                .build();
}

采用档案系统配置.

directModelSubstitute大摇大摆地将LocalDate视为String

这篇关于Java 8 LocalDate大张旗鼓地显示的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆