1.添加相关配置类
package com.atguigu.spzx.common.config;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Contact;
import io.swagger.v3.oas.models.info.Info;
import org.springdoc.core.models.GroupedOpenApi;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class Knife4jConfig {
@Bean
public GroupedOpenApi userApi() { // 创建了一个api接口的分组
return GroupedOpenApi.builder()
.group("user-api") // 分组名称
.pathsToMatch("/api/**") // 接口请求路径规则
.build();
}
@Bean
public GroupedOpenApi adminApi() { // 创建了一个api接口的分组
return GroupedOpenApi.builder()
.group("admin-api") // 分组名称
.pathsToMatch("/admin/**") // 接口请求路径规则
.build();
}
/***
* @description 自定义接口信息
*/
@Bean
public OpenAPI customOpenAPI() {
return new OpenAPI().info(new Info()
.title("API接口文档")
.version("1.0")
.description("API接口文档")
.contact(new Contact().name("周建豪"))); // 设定作者
}
}
GroupedOpenApi 代表api分组
2.手动扫描swagger配置文件
因为服务的启动类在spzx-manager模块中,swagger配置文件在spzx-common模块中,这两个模块属于平级关系,springboot只会扫描启动类所在模块的子集,所以我们需要在启动类中手动扫描swagger配置文件
package com.atguigu.spzx.manager;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
@SpringBootApplication
//手动扫描swagger配置类,因为swagger配置类不在当前启动类的子包中,所以需要手动扫描
@ComponentScan(basePackages = {"com.atguigu.spzx"})
public class ManagerAppliaction {
public static void main(String[] args) {
SpringApplication.run(ManagerAppliaction.class,args);
}
}
3.添加后启动服务
打开
http://localhost:3000/doc.html
端口号改为自己的服务端口号
可以看到我们的配置都生效了
4.进行测试
点击用户接口,选择相关接口
点击调试
输入username和password点击发送
可以看到测试成功
到此为止登录的接口就开发完成