1.引入依赖,版本3.0.0只引入一个即可
<dependency><groupId>io.springfox</groupId><artifactId>springfox-boot-starter</artifactId><version>3.0.0</version></dependency>
2. 配置类SwaggerConfig
package org.fh.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.oas.annotations.EnableOpenApi; | |
import springfox.documentation.service.ApiInfo; | |
import springfox.documentation.spi.DocumentationType; | |
import springfox.documentation.spring.web.plugins.Docket; | |
/** | |
* 说明:Swagger 接口API生成 | |
* 作者:FH Admin | |
* from fhadmin.cn | |
*/ | |
public class SwaggerConfig { | |
public Docket createRestApi() {return new Docket(DocumentationType.OAS_30).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.basePackage("org.fh.controller")) // 为当前包路径.paths(PathSelectors.any()).build();} | |
private ApiInfo apiInfo() {return new ApiInfoBuilder().title("FH Admin Swagger3 RESTful API") // 页面标题.version("3.0") // 版本号.description("fhadmin.org") // 描述.build();} | |
} |
3.Swagger 拦截配置
package org.fh.config; | |
import org.springframework.context.annotation.Configuration; | |
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; | |
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry; | |
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; | |
/** | |
* 说明:Swagger 拦截配置 | |
* 作者:FH Admin | |
* from fhadmin.cn | |
*/ | |
public class WebMvcConfig implements WebMvcConfigurer { | |
public void addResourceHandlers(ResourceHandlerRegistry registry) { | |
registry.addResourceHandler("/swagger-ui/**").addResourceLocations("classpath:/META-INF/resources/webjars/springfox-swagger-ui/").resourceChain(false);} | |
public void addViewControllers(ViewControllerRegistry registry) { | |
registry.addViewController("/swagger-ui/").setViewName("forward:/swagger-ui/index.html");} | |
} |
4.访问 127.0.0.1:8081/swagger-ui/index.html
5.接口说明案例
处理类上加注解,比如
@Api("用户注册登录接口")
在方法上加注解,比如
@ApiOperation(value = "登录", notes="校验登录是否成功") | |
@ApiImplicitParam(name = "KEYDATA", value = "用户名密码混淆码组合", paramType = "query", required = true, dataType = "String") |