OpenApi 生成器:使用 Long 作为数字默认值?
OpenApi Generator: Use Long as Numeric default?
我们正在使用 openapi-generator 的 openapi-generator-maven-plugin 来自动化与 swagger 的集成,该 swagger 使用 not int64 的数字数据类型。我们的代码库尝试围绕使用 Long 值进行标准化,但 openapi 生成使用 int 的工件。是否可以配置插件以生成使用 Long 而不是 Integer 的 POJO?
我们可以修改 swagger 定义以指定 int64 格式,但更喜欢通过 swagger 之外的配置来执行此操作。
使用format
关键字指定int64
.
example:
type: integer
format: int64
我为此使用了 typeMappings 参数。使用 Maven 插件配置,它看起来像这样:
<plugin>
<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>5.1.0</version>
<configuration>
<typeMappings>integer=Long,int=Long</typeMappings>
</configuration>
<executions>
<execution>
...
</execution>
</executions>
</plugin>
请注意,在撰写本文时,此配置并不像在 swagger-codegen 中那样在执行内部起作用。直接调用openapi-generator时也可以使用typemappings参数
我们正在使用 openapi-generator 的 openapi-generator-maven-plugin 来自动化与 swagger 的集成,该 swagger 使用 not int64 的数字数据类型。我们的代码库尝试围绕使用 Long 值进行标准化,但 openapi 生成使用 int 的工件。是否可以配置插件以生成使用 Long 而不是 Integer 的 POJO?
我们可以修改 swagger 定义以指定 int64 格式,但更喜欢通过 swagger 之外的配置来执行此操作。
使用format
关键字指定int64
.
example:
type: integer
format: int64
我为此使用了 typeMappings 参数。使用 Maven 插件配置,它看起来像这样:
<plugin>
<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>5.1.0</version>
<configuration>
<typeMappings>integer=Long,int=Long</typeMappings>
</configuration>
<executions>
<execution>
...
</execution>
</executions>
</plugin>
请注意,在撰写本文时,此配置并不像在 swagger-codegen 中那样在执行内部起作用。直接调用openapi-generator时也可以使用typemappings参数