Используйте java.time.Instant для представления DateTime вместо OffsetDateTime.JAVA

Программисты JAVA общаются здесь
Anonymous
Используйте java.time.Instant для представления DateTime вместо OffsetDateTime.

Сообщение Anonymous »

Я использую плагин openApi maven для генерации запросов/ответов Java для REST API.

Запрос имеет свойство DateTime, когда я запускаю генератор, я получаю свойство DateTime атрибута, представленного как java.time.OffsetDateTime. Проблема в том, что мне нужно представить свойство как java.time.Instant.

Это спецификация openApi для запроса:

"DocumentDto" : {
"type" : "object",
"properties" : {
"uuid" : {
"type" : "string",
"format" : "uuid"
},
"creationDate" : {
"type" : "string",
"format" : "date-time"
}
}
}


Сгенерированный Java-запрос:

@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2019-05-21T13:07:21.639+02:00[Europe/Zurich]")
public class DocumentDto {
public static final String SERIALIZED_NAME_UUID = "uuid";
@SerializedName(SERIALIZED_NAME_UUID)
private UUID uuid;

public static final String SERIALIZED_NAME_TEST = "creationDate";
@SerializedName(SERIALIZED_NAME_TEST)
private OffsetDateTime creationDate;
}


Настройка плагина maven:


org.openapitools
openapi-generator-maven-plugin
3.3.4


test-service
validate

generate



${project.build.directory}/open-api/swagger.json

java
false
false
com.test
test-service
test.model
test.api

src/gen/java/main
java8
true







Я уже пробовал typeMappings и importMappings, но это не повлияло на сгенерированный код:

DateTime=Instant
Instant=java.time.Instant

Вернуться в «JAVA»