前言

使用Swagger只需要按照规范定义接口接口相关信息,就可以做到生成接口文档在线接口调试页面
官网Swagger官网
Knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案


配置步骤

1.导入knife4j的maven坐标测试需要导入web依赖哦~)

<dependency>
	&lt;groupId&gt;com.github.xiaoymin</groupId&gt;
	<artifactId&gt;knife4j-spring-boot-starter</artifactId&gt;
	<version&gt;3.0.2</version&gt;
</dependency&gt;

2.再配置类中加入knife4j相关配置

3.设置静态资源映射,否则接口文档页面无法访问

package com.config;

import com.sky.interceptor.JwtTokenAdminInterceptor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
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;

/**
 * 配置类,注册web相关组件
 */
@Configuration
@Slf4j  //日志门面
public class WebMvcConfiguration extends WebMvcConfigurationSupport {
    /**
     * 通过knife4j生成接口文档
     * 我这里提供了日志功能,不需要的可以删除
     * 这里是第二步
     */
    @Bean
    public Docket docket() {
        log.info("开始注册knife4j接口文档...");  //输出日志
        ApiInfo apiInfo = new ApiInfoBuilder()
                .title("XXX接口文档")
                .version("XXX")
                .description("XXX接口文档")
                .build();
        Docket docket = new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo)
                .select()
                //扫描规则当前包及其子包
                .apis(RequestHandlerSelectors.basePackage("扫描包的路径名")) 
                .paths(PathSelectors.any())
                .build();
        return docket;
    }

    /**
     * 设置静态资源映射
     * 这里第三步,设置访问页面
     */
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        log.info("开始注册静态资源映射...");
        //在这里配置访问页面,不修改访问路径为:localhost:8080/doc.html
        registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
    }
}

4.访问localhost:8080/doc.html即可访问成功

使用步骤

使用Swagger只需要再类上添加注解即可

在这里插入图片描述
可以添加这些注解,为里面属性赋值,得到的页面会有信息提示提高可读性

总结

本文我们学会了如何配置Swagger来对后端接口进行测试,其中配置代码不需要会写,只需要更改为自己的即可

原文地址:https://blog.csdn.net/wk_cjs/article/details/134764957

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_35938.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注