从Swagger规范生成Scala模型

问题描述 投票:0回答:1

我正在尝试使用Scala构建Vert.X应用程序,并通过OpenAPI3RouterFactory使用OpenAPI 3规范生成路由。我需要生成我的规范中描述的模型作为Scala类。有没有简单明了的方法来实现这一目标?

我正在使用SBT构建我的应用程序,我已经为Swagger尝试了一些sbt codegen插件,但它们似乎都没有用。

scala vert.x swagger-codegen
1个回答
0
投票

使用vertx-web-api-contract,在运行时生成路由器和验证处理程序,因此您无需生成路由。您可以开始使用路由器工厂并安装所需的处理程序,就好像它是Vert.x Web路由器一样。如果你想引导一个新项目有一个名为vertx-starter的社区工具,但现在没有Scala支持

谈到模型,你可以做的是在不同的文件中组织你的OpenAPI规范,将所有数据模型定义放在特定的目录下,如spec/models(你可以找到一个好的指南here)。然后,您可以配置jsonschema2pojosbt plugin)为该目录中的每个模式生成一个Scala案例类。然后,如果要在单个文件中重新打包规范,可以配置swagger-cli等工具在编译期间运行并将规范打包回单个文件中

© www.soinside.com 2019 - 2024. All rights reserved.