swagger接口文档,API详细配置,绝对简单!!!
1、第一步:引入依赖,在项目的pom文件中引入swagger的依赖,如下。
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-boot-starter</artifactId> <version>3.0.0</version> </dependency>
2 、第二步,在启动类中配置注解@EnableOpenApi。
package com.nq.user.server; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; import springfox.documentation.oas.annotations.EnableOpenApi; @EnableOpenApi @SpringBootApplication public class UserServerApplication { public static void main(String[] args) { SpringApplication.run(UserServerApplication.class, args); } }
3、第三步,编写配置类,新建config包,在包下新建SwaggerConfig类,如下:
package com.nq.user.server.config; import io.swagger.annotations.ApiOperation; 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; //接口文档+测试工具 @Configuration public class SwaggerConfig { @Bean public Docket createRestApi() { return new Docket(DocumentationType.OAS_30) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("用户接口服务") .description("提供用户相关的增删改查等功能") .contact(new Contact("nq", "http://www.kgc.cn", "******@163.com")) .version("1.0") .build(); } }
自己命名title,description,contact,version,分别为标题,描述,联系方式,版本。
4、第四步,在controller中增加注解@API,方法上增加注解@ApiOperation,参数前加@ApiParam,如下:
@Api(tags = "用户的增删改查接口") @RestController @RequestMapping("/user") public class UserController { @Autowired private UserService userService; @ApiOperation("根据用户名查询用户") @GetMapping("/users") public User getUserByUserName(@RequestParam("userName") @ApiParam("用户登录名") String userName){ System.out.println(userService.getUserByUserName(userName).toString()); return userService.getUserByUserName(userName); } }
5、最后一步,验证:打开浏览器输入网址,http://localhost:8081/swagger-ui/,端口号为自己在配置文件中自己设置的。页面如下:
try it out 自己试一试吧!感谢!