Swagger之学习使用
前言
这个是为了介绍一下Swagger的使用,最近也在使用Swagger,就在下面这篇文章介绍下,我特地改了上次分享的外卖项目,添加了Swagger注解…
添加依赖
Maven项目添加依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>3.0.0</version>
</dependency>
Spring Boot添加项目依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
Swagger 项目的配置文件
@Configuration
public class SpringFoxConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
}
Spring boot项目需要添加配置项到你的Swagger配置类上***@EnableSwagger2WebMvc***
@Configuration
@EnableSwagger2WebMvc
public class SpringFoxConfig {
}
如果不是Spring boot的话,就不能自动配置好请求的路径,其他项目就需要添加Swagger的静态资源的配置路径映射,这个资源映射我们需要添加
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
}
添加Swagger-UI,Swagger-UI可以帮助你查看接口文档和测试,我们需要添加一个依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>3.0.0</version>
</dependency>
我们可以通过浏览器去访问它
http://localhost:8080/your-app-root/swagger-ui/
相关注解
使用Swagger注解是服务于前后端分类开发,更加方便我们和前端进行对接,那接口文档是怎么样可以生成呢,前面我们只是搭建了接口查看的地址,那这些接口时怎么扫描进去的呢,下面我将列举一些常用到的注解出来以及怎么使用。
| 注解 | 说明 |
|---|---|
| @ApiModel(value =“地址信息”) | 这个value是对接口的描述,一般我们对将这个注解加在Controller上。 |
| @ApiOperation(value = “新增地址”) | 这个注解是添加在方法上,是用于方法描述,tags是用来进行分组,produces是指定返回内容类型,consumes时指定提交处理请求的内容类型 |
| @ApiParam(value = “地址信息”, required = true) | 参数说明,value是参数描述,而required是否为必填项, |
| @ApiModel(“菜品”) | 对象实体类的说明,value是实体的说明 |
| @ApiModelProperty(“菜品id”) | value类的字段说明,required表示是否为必填项,hidden是隐藏 |
上述就是我们比较常用的注解,通过这些注解我们可以在运行我们的项目时,通过访问路径就可以访问接口文档,这样在对前后端进行分离开发时也会更加方便,而且一般接口文档都可以支出导出多种形式,下面是我项目的接口文档接口,项目的介绍也有下面这个链接,我使用的是一个依赖,但是对请求路径映射也是需要配置的。
项目地址:
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.2</version>
</dependency>

Swagger之学习使用的更多相关文章
- Swagger框架学习分享
Swagger框架学习分享 转至元数据结尾 Created and last modified by 刘新宇 大约1分钟曾经 pageId=162045803#page-metadata-start& ...
- Swagger - ui 学习
今天同组的打伙伴给介绍了 Swagger-ui 这个 自动生成 接口文档的 工具,感觉比较方便好用, 遂决定 学习一下, 开个随笔进行随时记录,同时也是提醒自己 先保存两篇感觉还不错的文章 : htt ...
- Swagger的学习
Swagger 号称世界上最流行的Api框架; RestFul Api文档在线自动生成工具=>Api文档与API定义同步更新 直接运行,可以在线测试API接口 支持多种语言:(Java,Php. ...
- .net core webapi +ddd(领域驱动)+nlog配置+swagger配置 学习笔记(1)
搭建一个.net core webapi项目 在开始之前,请先安装最新版本的VS2017,以及最新的.net core 2.1. 首先创建一个Asp.Net Core Web应用程序 这个应用程序是 ...
- .net core webapi +ddd(领域驱动)+nlog配置+swagger配置 学习笔记(2)
DDD领域驱动模型设计 什么是DDD 软件开发不是一蹴而就的事情,我们不可能在不了解产品(或行业领域)的前提下进行软件开发,在开发前,通常需要进行大量的业务知识梳理,而后到达软件设计的层面,最后才是开 ...
- ASP.NET Core 1.0 中使用 Swagger 生成文档
github:https://github.com/domaindrivendev/Ahoy 之前文章有介绍在ASP.NET WebAPI 中使用Swagger生成文档,ASP.NET Core 1. ...
- Swagger API接口管理
介绍 Swagger API框架,用于管理项目中API接口,属当前最流行的API接口管理工具. Swagger功能强大,UI界面漂亮,支持在线测试等! Swagger包 ...
- 接口文档管理工具-Postman、Swagger、RAP(转载)
接口文档管理工具-Postman.Swagger.RAP 转自:http://www.51testing.com/html/10/n-3715910.html 在项目开发测试中,接口文档是贯穿始终的. ...
- 星舟平台的使用(GIT、spring Boot 的使用以及swagger组件的使用)
一.介绍星舟平台 1.星舟简介 2.网关kong的介绍 3.客户端 1).服务注册:Eureka 2).客户端负载均衡:Ribbon 4 ...
- 3、swagger调试
Swagger: 1.将项目中所有的接口展现在页面上,这样后端程序员就不需要专门为前端使用者编写专门的接口文档: 2.当接口更新之后,只需要修改代码中的Swagger描述就可以实时生成新的接口文档了, ...
随机推荐
- SQLyog 13.1.1.0注册码证书秘钥
注册信息: Name:(用户名随意) License Key: Professional: 8e053a86-cdd3-48ed-b5fe-94c51b3d343c Enterprise: a4668 ...
- RPC方式调用远程webservice接口
/** * 可调整调用方法与命名空间的请求 * @param wsMethod 方法名 * @param bodyMessage json请求体.toString() * @return JSONOb ...
- 纯js实现字符串formate方法
function format(pattern){ if(! (pattern instanceof String)){ throw new TypeError("错误的参数类型" ...
- 银行对账单PDF一页拆分多页
一个页拆分多个页,按照流水 String bank = "{\n" + "\t\"bank\" : [\n" + "\t\t{\n ...
- P5192 有源汇上下界最大流总结
之前听学长讲解时,只听了大体思路就跑路了,没有听到具体细节.后面在考虑出度多的点具体向虚拟源点连边还是虚拟汇点连边时,只凭直觉直接向源点连边,然后就一直WA,直到后来中午听同学讲解才反应过来,白白浪费 ...
- [Unity移动端]Mono与IL2Cpp
参考链接: https://blog.csdn.net/linxinfa/article/details/87358809 https://blog.csdn.net/Aison_/article/d ...
- vue树形结构图
1.下载插件:cnpm i vue2-org-tree 2.下载less-loader不然报错(this.getOptions is not a function):npm install less- ...
- python os模块总结-目录、文件操作工具
os (operating system)是python标准库中的操作系统接口,提供了很多与操作系统进行交互的函数,可快速对目录.文件进行操作. 下面我将在C:\Users\Administrator ...
- Flink模式
Per-job Cluster 该模式下,一个作业一个集群,作业之间相互隔离. 在Per-Job模式下,集群管理器框架用于为每个提交的Job启动一个 Flink 集群.Job完成后,集群将关闭,所有残 ...
- 利用Vue技术实现的查询所有和添加功能
就是根据Vue本身的特性,对之前写过的JSON等进行页面代码的简化. 其中,有俩点,需要明白一下: 在body标签里面,使用div标签,将列表数据包住,并设置一个id,便于vue对其的引用 在使用vu ...