String的maxlength的Swagger代码生成未在生成的模型类中转换

eblbsuwk  于 2023-08-05  发布在  其他
关注(0)|答案(1)|浏览(126)

我为swagger文档中的字符串属性定义了maxlength,如下所述,针对Address的一个属性城市。但是为这个类的swagger生成的代码没有任何长度验证。据我所知,理论上,最大长度应该在生成的代码中使用@Size注解进行验证。我使用maven插件从swagger生成代码。

<plugin>
            <groupId>io.swagger.codegen.v3</groupId>
            <artifactId>swagger-codegen-maven-plugin</artifactId>
            <version>3.0.33</version>
           </plugin>

字符串
swagger的String属性如下所示:

city:
       description: The city name.
       maxLength: 60
       type: string


生成的代码具有模型类Address,其中城市作为属性,而没有对长度进行任何验证:

@JsonProperty("city")
  private String city = null;


请分享您的输入如何将maxlength转换/生成为从swagger文档生成的模型类中的代码。

2ic8powd

2ic8powd1#

我找到解决办法了。我使用Maven插件来生成代码。我添加了这个属性沿着其他属性,并为@Size等生成了注解。在模型类中。虽然注解是在getter中生成的,但我假设在设置数据时验证应该在那里,但我仍然需要测试它。

<configOptions>
    <useBeanValidation>true</useBeanValidation>
  </configOptions>

字符串

相关问题