Swagger的应用
2024-09-04 22:30:36
一、介绍
- 一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 框架。
二、依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
package com.guli.edu.config; @Configuration
@EnableSwagger2
public class Swagger2Config { @Bean
public Docket webApiConfig(){ return new Docket(DocumentationType.SWAGGER_2)
.groupName("webApi")
.apiInfo(webApiInfo())
.select()
.paths(Predicates.not(PathSelectors.regex("/admin/.*")))
.paths(Predicates.not(PathSelectors.regex("/error.*")))
.build(); } @Bean
public Docket adminApiConfig(){ return new Docket(DocumentationType.SWAGGER_2)
.groupName("adminApi")
.apiInfo(adminApiInfo())
.select()
.paths(Predicates.and(PathSelectors.regex("/admin/.*")))
.build(); } private ApiInfo webApiInfo(){ return new ApiInfoBuilder()
.title("网站-课程中心API文档")
.description("本文档描述了课程中心微服务接口定义")
.version("1.0")
.contact(new Contact("Helen", "http://atguigu.com", "55317332@qq.com"))
.build();
} private ApiInfo adminApiInfo(){ return new ApiInfoBuilder()
.title("后台管理系统-课程中心API文档")
.description("本文档描述了后台管理系统课程中心微服务接口定义")
.version("1.0")
.contact(new Contact("Helen", "http://atguigu.com", "55317332@qq.com"))
.build();
}
}
三、注解
四、配置(可以使用配置类或者配置文件)
swagger:
title: TMax API接口文档
description: TMax Api Documentation
version: 1.0.0
termsOfServiceUrl: https://www.sscai.club
contact:
name: niceyoo
url: https://www.sscai.club
email: apkdream@163.com
五、两款美化插件
1、swagger-mg-ui
<dependency>
<groupId>com.zyplayer</groupId>
<artifactId>swagger-mg-ui</artifactId>
<version>1.0.6</version>
</dependency> 2、knife4j
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-ui</artifactId>
<version>2.0.4</version>
</dependency>
最新文章
- C# Tostring 格式化输出字符串全解
- AngularJS 中利用 Interceptors 来统一处理 HTTP 的错误(reproduce)
- Oracle与SQL SERVER编程差异分析(入门)
- name值与id值在Js获取元素时的区别
- 在xml中添加array
- Python 初学(一) 标识符
- 斌哥的 Docker 进阶指南
- python流程控制语句 ifelse - 4
- 软件开发杂谈之从需求到上线---valen
- QWidget与HWND的互相转换
- 一起ORA-00028案例的处理过程
- Win10系列:C#应用控件进阶4
- Anaconda的安装及使用
- Java高并发秒杀API之web层
- [UGUI]Image源码分析
- 开启safe_mode之后对php系统函数的影响
- tomcat内存设置问题
- Load balancing 各组件的比较
- 集合框架的类和接口均在java.util包中。 任何对象加入集合类后,自动转变为Object类型,所以在取出的时候,需要进行强制类型转换。
- NLP自然语言处理 jieba中文分词,关键词提取,词性标注,并行分词,起止位置,文本挖掘,NLP WordEmbedding的概念和实现
热门文章
- Dom 解析XML
- 图数据库HugeGraph:HugeGraph-Hubble基于Web的可视化图管理初体验
- 每一个each(Power Query 之 M 语言)
- LuoguP7505 「Wdsr-2.5」小小的埴轮兵团 题解
- k8s daemonset controller源码分析
- Coder 投稿 | mPaaS 的多版本接入(Android)
- 【LeetCode】5686. 移动所有球到每个盒子所需的最小操作数 Minimum Number of Operations to Move All Balls to Each Box
- 【LeetCode】998. Maximum Binary Tree II 解题报告(C++)
- 【LeetCode】953. Verifying an Alien Dictionary 解题报告(Python)
- 1281 - New Traffic System