1、加入knife4j starter依赖
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
</dependency>
2、加入config 配置
package com.ideal.wfms.scheduler.config;
import io.swagger.annotations.ApiOperation;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import springfox.bean.validators.configuration.BeanValidatorPluginsConfiguration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;
@Configuration
@EnableSwagger2WebMvc
@Import(BeanValidatorPluginsConfiguration.class)
public class Swagger2 {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2).
apiInfo(apiInfo()).
select()
// .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
.apis(RequestHandlerSelectors.
//指定controller包
basePackage("com.itq.brank.controller"))
// 选择器选择此包下的所用controller
.paths(PathSelectors.any())
.build();
}
//swagger2 所需对象
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("权限管理系统")
//.contact(new Contact("Sarovane", "http://localhost:80888/hello", "xxx@163.com"))
.description("权限管理系统")
.version("1.0.0")
.build();
}
}
3、设置请求路径转发
@Configuration
public class WebConfigView implements WebMvcConfigurer {
/**
* 试图跳转功能
*/
@Override
public void addViewControllers(ViewControllerRegistry registry) {
registry.addRedirectViewController("/", "/doc.html");
}
4、security加入过滤
.antMatchers("/**/doc.html","webjars/","/swagger-resources/","/**/v2/api-docs").permitAll()