Springfox-如果未在控制器中使用POJO,是否可以通过注释记录POJO

时间:2018-10-16 18:09:11

标签: java swagger springfox

正如标题中所述,如果未在控制器方法中使用POJO,是否可以在草率文档中包含POJO?

我尝试在POJO类上使用@ApiModel注释,即:

@ApiModel("POJO")
public class Pojo {
  ...
}

但是,除非POJO由控制器返回,否则我无法使其出现在生成的swagger文档中。有没有办法做到这一点?

顺便说一下,我使用的是springfox 2.9.2版。

1 个答案:

答案 0 :(得分:2)

Springfox可以实现。您只需要修改Docket。将additionalModels方法添加到您的Docket实现中:

@Autowired
private TypeResolver resolver;

@Bean
public Docket api() {
    return new Docket(DocumentationType.SWAGGER_2)
            .select()
            .apis(RequestHandlerSelectors.any())
            .paths(PathSelectors.any())
            .build()

            ...

            .additionalModels(resolver.resolve(Pojo.class));
}