1导入jar包
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
2配置工具类
@Configuration
@EnableSwagger2
public class Swagger2Config {
@Bean
public Docket api() {
//添加head参数start
ParameterBuilder tokenPar = new ParameterBuilder();
List<Parameter> pars = new ArrayList<Parameter>();
tokenPar.name("Authorization").description("登录token").modelRef(new ModelRef("string")).parameterType("header").required(false).build();
pars.add(tokenPar.build());
//添加head参数end
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
// 自行修改为自己的包路径
.apis(RequestHandlerSelectors.basePackage("com.tensquare.user"))
.paths(PathSelectors.any())
.build()
.globalOperationParameters(pars);
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("swagger-api文档")
.description("swagger接入")
.version("1.0")
.build();
}
}
3 在yml写上地址
status-page-url: http://localhost:${server.port}/swagger-ui.html
就像这样4在启动类加注解@EnableSwagger2
启动
点点点 进入这个页面
http://localhost:9008/swagger-ui.html
完成
在这里我遇到一个错误 报404
回看我的步骤 也没有错
我找啊找 找啊找
最后终于被聪明的我发现
我把它拦截了
因为
继承了WebMvcConfigurationSupport
就像这样
@Configuration
public class ApplicationConfig extends WebMvcConfigurationSupport {
@Autowired
private JwtInterceptor jwtFilter;
@Override
public void addInterceptors(InterceptorRegistry registry){
registry.addInterceptor(jwtFilter).addPathPatterns("/**").excludePathPatterns("/**/login/**")
.excludePathPatterns("/swagger-resources/**", "/webjars/**", "/v2/**", "/swagger-ui.html/**");
}
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**") .addResourceLocations("classpath:/META-INF/resources/webjars/"); }
}
于是加上上面几行代码 就可以了