我可以从现有的Java代码中获取Swagger文档吗?

时间:2017-01-13 13:43:32

标签: java rest swagger swagger-ui swagger-2.0

我绝对是 Swagger 的新人,我有以下疑问:

我知道通常我需要在代码我的REST API之前创建Swagger文档并使用此文档来创建我的API(我知道从Swagger编辑器我也可以自动生成我的API服务器。)

我的问题如下:

我正在开发一个实现我的REST API的Java应用程序(Spring Boot应用程序)。我想使用Swagger来创建我的API文档。

是否存在自动执行此操作的方法?从我的Java代码到Swagger yaml 文件?例如,以某种方式为某些工具解析我的Java代码注释?

2 个答案:

答案 0 :(得分:3)

是的,有一个工具可以轻松地从你已编写的代码生成swagger文档。

这包含在Spring Appllication中将创建文档 https://springfox.github.io/springfox/docs/current/

在我看来,这是正确的方法。不要创建文档并生成代码,而是生成文档。这也是Javadoc的创建方式。

答案 1 :(得分:2)

您无需特别注释任何内容。

使用 Swagger 创建一个类似于以下类的类来访问API:

@Configuration
@EnableSwagger2
public class SwaggerConfig{

  @Bean
  public Docket api(){

    return new Docket(DocumentationType.SWAGGER_2).select().apis(
        RequestHandlerSelectors.basePackage("com.yourcompany.restcode")).paths(PathSelectors.any()).build();
  }
}

然后使用以下内容访问API文档:

localhost:8080/swagger-ui.html#/