Swagger-UI配置记录

mac2024-03-24  27

Swagger-UI:可以根据注解动态的生产API文档

1.POX jar包支持

<!--Swagger-UI API文档生产工具--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.7.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.7.0</version> </dependency>

2. Swagger配置类

@Configuration @EnableSwagger2 public class Swagger2Config { @Bean public Docket createRestApi(){ return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() //为当前包下controller生成API文档 .apis(RequestHandlerSelectors.basePackage("com.keyou.controller")) //为有@Api注解的Controller生成API文档 // .apis(RequestHandlerSelectors.withClassAnnotation(Api.class)) //为有@ApiOperation注解的方法生成API文档 // .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("SwaggerUI演示") .description("demo") .contact("ding") .version("1.0") .build(); } }

3. 使用@Api ,@ApiOperation,@ApiParam

@Api:用于修饰Controller类,生成Controller相关文档信息

@Api(tags = "DemoController", description = "Demo演示")

@ApiOperation:用于修饰Controller类中的方法,生成接口方法相关文档信息

@ApiOperation("获取所有Demo列表")

@ApiParam:用于修饰接口中的参数,生成接口参数相关文档信息

@ApiParam("页码") Integer pageNum

@ApiModelProperty:用于修饰实体类的属性,当实体类是请求参数或返回结果时,直接生成相关文档信息

@ApiModelProperty(value = "首字母") private String firstLetter;

访问地址http://localhost:8080/swagger-ui.html 端口改为本工程的端口号

最新回复(0)