栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Springboot集成在线文档Swagger

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Springboot集成在线文档Swagger

首先,我们要知道swagger和postman的作用就是校验接口的有效性。
我们再这里讲解以下swagger,swagger是:依赖内嵌在项目中的一款在线文档测试工具; 让手写的word文档的工作交给swagger。

springboot集成Swagger

第一步:依赖添加


    io.springfox
    springfox-swagger-ui
    2.9.2


    io.springfox
    springfox-swagger2
    2.9.2




    io.springfox
    springfox-swagger2
    2.9.2
    
        
            io.swagger
            swagger-models
        
        
            com.google.guava
            guava
        
    



    io.swagger
    swagger-models
    1.5.21



    io.springfox
    springfox-swagger-ui
    2.9.2



    com.github.xiaoymin
    swagger-bootstrap-ui
    1.8.5

第二步:定义和开启swagger的配置类
建立一个config包放置这个配置类

还需要在配置类,确定你需要生成的接口文档的路径,里面读取把哪个包下面的方法作为接口,只能是:controller

package com.kuangstudy.config;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
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.EnableSwagger2;

@Configuration
@EnableSwagger2
public class SwaggerConfiguration {
    
    @Bean
    public Docket createRestApi() {
        return new Docket(documentationType.SWAGGER_2)
                .apiInfo(getApiInfo())
                .select()
                // 核心:读取把那个包下面的方法作为接口,只能是:controller
                .apis(RequestHandlerSelectors.basePackage("com.kuangstudy.controller"))
                .paths(PathSelectors.any())
                .build();
    }


    private ApiInfo getApiInfo() {
        return new ApiInfoBuilder()
                .title("APP项目数据接口")
                .description("在线体验文档")          .termsOfServiceUrl("https://api.lc.com/api")
                .contact("lc")
                .version("1.0")
                .build();
    }
}

第三步:使用swagger
运行的项目即可,访问如下

旧版

http://localhost:你服务器端口/swagger-ui.html

新版

http://localhost:你服务器端口/doc.html

Swagger注解的使用,让接口页面看到对应的描述

掌握一些核心即可,千万不要死记硬背,你应该是写一个完整的,然后就赋值粘贴即可。

实际开发中主要是用使用这几个注解:

  • 写在控制器类上
    @Api(description = “用户管理”) // 控制器说明

  • 写在控制器的方法上
    @ApiOperation(value = “用户注册”) //方法的功能说明

@ApiImplicitParams(
@ApiImplicitParam(name = “user”, value = “用户对象”)
) //方法的参数说明

  • 实体类上
    @ApiModel(description = “用户实体”) // 实体类的说明

  • 实体类的属性上
    @ApiModelProperty(value = “用户编号”,required=true) // 属性说明
    dataType=“Long” 类型,默认字符串

  • 其他
    再类上加上@ApiIgnore,那这个雷山更实用的所有swagger注解都失效

@ApiModel:用对象来接收参数
@ApiProperty:用对象接收参数时,描述对象的一个字段

完整的参考(学相伴-阿超):https://www.kuangstudy.com/bbs/1399753439654756353


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/592619.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号