第一步 加入依赖:
com.github.xiaoymin knife4j-spring-boot-starter3.0.2
第二步:创建配置
@Configuration
@EnableSwagger2
//@EnableKnife4j
@import(BeanValidatorPluginsConfiguration.class)
@ConditionalOnProperty(value = {"knife4j.enable"}, matchIfMissing = true)
public class SwaggerConfig {
@Bean(value = "default")
public Docket defaultApi1() {
String packagePath = this.getClass().getPackage().getName().replace("config","controller");
Predicate requestHandlerPredicate = RequestHandlerSelectors.basePackage(packagePath);
Docket docket=new Docket(documentationType.SWAGGER_2)
.apiInfo(apiInfo())
//分组名称
.groupName("1.0版本")
//.globalOperationParameters(getGlobalOperationParameters())
.select()
//这里指定Controller扫描包路径
.apis(requestHandlerPredicate)
.paths(PathSelectors.any())
.build();
return docket;
}
// @Bean(value = "default2")
// public Docket defaultApi2() {
// Docket docket=new Docket(documentationType.SWAGGER_2)
// .apiInfo(apiInfo())
// //分组名称
// .groupName("工具")
// //.globalOperationParameters(getGlobalOperationParameters())
// .select()
// //这里指定Controller扫描包路径
// .apis(RequestHandlerSelectors.basePackage("com.yxkj.netplus.main"))
// .paths(PathSelectors.any())
// .build();
// return docket;
// }
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("医星标准API接口文档")
.description("医星标准API接口文档 版权归成电医星平台接口部门所有")
.termsOfServiceUrl("http://www.yxkj.com/")
.contact(new Contact("成电医院星","www.yxkj.com",""))
.version("1.0")
.build();
}
private List getGlobalOperationParameters() {
List pars = new ArrayList<>();
ParameterBuilder parameterBuilder = new ParameterBuilder();
parameterBuilder.name("token").description("token").modelRef(new ModelRef("string")).parameterType("header").required(true);
pars.add(parameterBuilder.build());
// parameterBuilder.name("sign").description("数据签名").modelRef(new ModelRef("string")).parameterType("header").required(true);
// pars.add(parameterBuilder.build());
return pars;
}
}
第三步:配置资源路径
@Configuration
public class SpringBootConfigurer extends WebMvcConfigurationSupport {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("doc.html").addResourceLocations("classpath:/meta-INF/resources/");
registry.addResourceHandler("*").addResourceLocations("classpath:/static/");
registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/meta-INF/resources/webjars/");
}
}
第五步:添加快速启动配置(可选)
@SpringBootApplication
public class TestWebApplication {
public static void main(String[] args) {
ConfigurableApplicationContext application = SpringApplication.run(TestWebApplication.class, args);
initInfo(application);
}
public static void initInfo(ConfigurableApplicationContext application){
Environment env = application.getEnvironment();
String serverPort = env.getProperty("server.port");
if (serverPort==null) serverPort = "8080";
String path = env.getProperty("server.servlet.context-path");
String name = env.getProperty("spring.application.name");
name = StringUtils.isEmpty(name) ? "Application" : name;
String serverName = StringUtils.isEmpty(path) ? "" : path;
System.out.println("n----------------------------------------------------------nt"
+ name + " is running! Access URLs:n"
+ "t本地访问地址: thttp://localhost:" + serverPort + serverName + "/doc.htmln"
+ "n---------------------启动完成---------------------");
//API 文档登录账号密码 配置在对应数据库的YXNET库的interface_user 表 密码由MD5加密,无法解密,只能重置 。
// 账号 admin 密码 123
// checkTable();
}
}



