如何使用@Paths从类/包创建Swagger模型的实例?

时间:2016-02-12 04:10:03

标签: java rest swagger

我有一个带有Path注释和方法的类:

@Path("/service")
class Service
  @Path("/getSomething")
  @GET
  Response getSomething() {
    ...
  }
}

如何使用swagger解析类并创建Swagger class的实例?

*如何将完整的包解析为Swagger模型?

1 个答案:

答案 0 :(得分:0)

您需要将Swagger @Api注释添加到资源类中。此外,您还需要添加其他注释,例如@ApiOperation@ApiResponse等,以记录API的其他方面。

就扫描整个软件包而言,您需要在初始化BeanConfig时引用资源包。以下是Swagger设置wiki中的示例代码段。

public class SampleApplication extends Application {

    public SampleApplication() {
        BeanConfig beanConfig = new BeanConfig();
        beanConfig.setVersion("1.0.2");
        beanConfig.setSchemes(new String[]{"http"});
        beanConfig.setHost("localhost:8002");
        beanConfig.setBasePath("/api");
        beanConfig.setResourcePackage("io.swagger.resources");
        beanConfig.setScan(true);
    }

    @Override
    public Set<Class<?>> getClasses() {
        // set your resources here
    }
}

编辑(2016-02-12):根据API,您可以在getSwagger()实例上调用BeanConfig方法,该方法应返回{您正在寻找的{1}}型号。

Swagger

您很可能需要先设置所需的资源包并进行扫描,以便填充模型。