前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >新Swagger springfox3.03

新Swagger springfox3.03

作者头像
收心
发布2022-03-02 08:49:07
4340
发布2022-03-02 08:49:07
举报
文章被收录于专栏:Java实战博客

介绍一下 SpringFox:

Automated JSON API documentation for API’s built with Spring

翻译:使用 Spring 构建的 API 的自动化 JSON API 文档

代码

maven依赖项目

代码语言:javascript
复制
    <!--声明依赖版本-->
    <properties>
        <swagger.version>3.0.0</swagger.version>
        <knife4f.version>3.0.3</knife4f.version>
    </properties>
    <dependencies>
        <!-- swagger2 可以通过  项目名称+/swagger-ui.html 访问具体页面-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-boot-starter</artifactId>
            <version>${swagger.version}</version>
        </dependency>
        <!-- API获取的包 -->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>${swagger.version}</version>
        </dependency>
        <!-- 官方UI包 -->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>${swagger.version}</version>
        </dependency>
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-spring-boot-starter</artifactId>
            <version>${knife4f.version}</version>
        </dependency>
    </dependencies>

配置类

代码语言:javascript
复制
import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
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.oas.annotations.EnableOpenApi;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;

/**
 * @Author: zanglikun
 * @Date: 2022/3/1 15:48
 * @Description: 新版本的Swagger3 接口文档地址变为 http://127.0.0.1/swagger-ui/index.html 而不是swagger-ui.html
 */

@Configuration
@EnableOpenApi
@EnableKnife4j
@Slf4j
public class NewSwagger {

    @Bean
    public Docket createRestApi() {
        log.info("开始加载Swagger...");
        return new Docket(DocumentationType.OAS_30)
                .enable(true)
                .apiInfo(apiInfo())
                .select()
                .apis( RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) //这里是自动匹配注解以显示接口文档
                //.apis(RequestHandlerSelectors.basePackage("com.xunliao")) //这里是指定包来显示其下带有注解的接口文档
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("枕聊App新版 接口文档")//标题
                .description("更多请咨询服务开发者,反馈前:请检查ip、端口、接口名是否有效")//描述
                //附加信息
                .contact(new Contact("Java开发团队", "https://www.zanglikun.com", "no@email.com"))
                .version("1.0")//版本
                .build();
    }

}

配置完成之后 即可访问

注意:swagger3 对比 swagger2

接口文档地址变为 http://127.0.0.1/swagger-ui/index.html 而不是2.0的swagger-ui.html

特殊说明: 以上文章,均是我实际操作,写出来的笔记资料,不会盗用别人文章!烦请各位,请勿直接盗用!转载记得标注来源!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 介绍一下 SpringFox:
  • 代码
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档