相当低级的一个问题。controller 类上添加 了@Api注解后,swagger 的ui界面上不显示接口信息。后来才发现。controller类上没加controller注解,导致类没有被加入容器中。淦
同样的还有可能是因为swagger配置类中扫描的包不对,例如下面这段代码中basePackage配置的路径不对导致的。
也就是说swagger不仅要扫描到controller及方法,还要扫描到实体类,标注了ApiModel注解的实体类。
@Configuration
@EnableSwagger2
@EnableSwaggerBootstrapUI
public class SwaggerConfiguration {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.sjcx.practice"))
.paths(PathSelectors.any())
.build();
}