(一)添加依赖
<swagger.version>2.8.0</swagger.version> <!-- swagger2 restful api 文档 start --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>${swagger.version}</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>${swagger.version}</version> </dependency> <!-- swagger2 restful api 文档 end -->
(二)swagger2的配置启动类
package com.tushuo.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.service.ApiInfo; import springfox.documentation.service.Contact; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2; /** * swagger2的配置文件,这里可以配置swagger2的一些基本的内容,比如扫描的包等等 * @author 咸鱼 * @date 2018/12/24 21:08 */ @Configuration @EnableSwagger2 public class SwaggerConfiguration { @Bean public Docket api() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() //api所在包路径(这个包指的是我们在哪些类中使用swagger2来测试) .apis(RequestHandlerSelectors.basePackage("com.tushuo.controller")) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() //页面标题 .title("api文档") //描述 .description("restful 风格接口") //创建人 .contact(new Contact("咸鱼", "https://blog.csdn.net", "[email protected]")) //版本号 .version("1.0") .build(); } }
(三)使用案例
1、添加相关注解
@RestController @RequiredArgsConstructor(onConstructor = @__(@Autowired)) @Api("测试 UserController 相关api") public class UserController { private final UserService userService; @ApiOperation(value = "保存用户", notes = "保存用户") @ApiImplicitParam(name = "user", value = "User", required = true, dataType = "User") @PostMapping("/user") public boolean addUser(@RequestBody User user) { return userService.save(user); } }
2、访问http://localhost:8080/swagger-ui.html