Swagger的使用

目录

一、简介

二、使用步骤

1、导入knife4j的maven坐标

2、在配置类中加入knife4j相关配置

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

 三、接口文档的简单讲解

 四、Swagger的常用注解


一、简介

        Swagger是一个用于构建、文档化和调试API的开工具集。它可以帮助开发员快速创建和设计RESTful API,并生成于阅读的文档。Swagger提供了一个交互式的API浏览器,可以在其中测试和调试API,还可以生成可执行的客户端代码以便与API进行交互。通过Swagger,开发人员可以更好地管理和共享API,提高开发速度和效率。

二、使用步骤

1、导入knife4j的maven坐标

在pom.xml中导入依赖

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

2、在配置类中加入knife4j相关配置

在对应的配置类中加入下面的代码

    @Bean
    public Docket docket() {
        ApiInfo apiInfo = new ApiInfoBuilder()
                .title("小说小程序接口文档")
                .version("2.0")
                .description("小说小程序接口文档")
                .build();
        Docket docket = new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.novelvx.controller"))
                .paths(PathSelectors.any())
                .build();
        return docket;
    }

其中,该apiInfo对象里面的属性即接口文档的信息,例如文档的标题、版本、描述等等

        ApiInfo apiInfo = new ApiInfoBuilder()
                .title("小说小程序接口文档")
                .version("2.0")
                .description("小说小程序接口文档")
                .build();

其中,docket对象里面的apis方法即指定生成接口需要扫描的包

        Docket docket = new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.novelvx.controller"))
                .paths(PathSelectors.any())
                .build();

例如,我的配置类是WebMvcConfiguration,controller路径为com.novelvx.config

 

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

在对应的配置类中加入方法

    /**
     * 设置静态资源映射
     * @param registry
     */
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        log.info("开始设置静态资源映射。。。");
        registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
    }

 

其中/doc.html为资源路径,当对这个路径进行请求时,会映射到该路径下classpath:/META-INF/resources/

当成功启动项目时,会出现开始设置静态资源映射。。。提示信息(信息内容可以自定义,在log.info里面)。然后看到我们所使用的端口为8080。

那我们访问接口文档的地址即http://localhost:8080/doc.html

 

 三、接口文档的简单讲解

1、生成对应的接口

接口方法对应接口用例

2、接口说明

在说明中含有对应的请求说明、响应说明

 3、接口测试

在对应的接口用例中,选择调试,可以进行对应的接口测试。是会真实请求到后端的

 四、Swagger的常用注解

注解说明
@Api用在类上,例如Controller,表示对类的说明
@ApiModel用在类上,例如entity、DTO、VO
@ApiModelProperty用在属性上,描述属性信息
@ApiOperation用在方法上,例如Controller的方法,说明方法的用途、作用

1、@Api

一般用于对类的说明

例如

2、@ApiModel

一般用于描述实体的

例如

 

3、@ApiModelProperty

一般描述实体类中属性的信息

例如

 

4、@ApiOperation

用于说明方法的用途、作用

例如

 

加了注解进行描述时,接口文档的可读性增强了

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星浩前进中

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值