swagger 以及swaggerUI使用的步骤
1.swagger,可以这么理解swagger是接口规范。Rest Api 传递参数的除了get请求外,put post,需要传递json。或者就是直接都通过传递json到后台
这里主要介绍一下springboot后台整合swagger的使用步骤。如果要查看swagger(OpenApi)的规范,可以参考git的官方文件规范。
springboot 整合swagger的简单基本使用。
第一步:
在pom.xml文件中引入依赖:
<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>
第二步:
添加swagger的配置类
@Configuration
@EnableSwagger2
@ComponentScan(basePackages = { "com.xxx.controller" })//扫描的包路径
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select()
.paths(PathSelectors.any()).build();
} private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("用户登录")//接口标题
.description("用户登录接口")//接口描述
.version("v1.0")//版本号
.contact(new Contact("name", "url", "email"))//联系人信息
.build();
}
}
如果没有添加@ComponentScan(basePackages={})扫描的包路径。也可以通过一下方式实现添加多个扫描包
@Configuration
@EnableSwagger2
public class SwaggerConfiguration { private static final String SPLITOR = ","; //重写basePackage()支持多包扫描
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(basePackage("cn.com.agree.aweb.controller.gateway" + SPLITOR
+ "cn.com.agree.aweb.controller.cluster" + SPLITOR
+ "cn.com.agree.aweb.controller.flow" + SPLITOR
+ "cn.com.agree.aweb.controller.fuse" + SPLITOR
+ "cn.com.agree.aweb.controller.conversion" + SPLITOR
+ "cn.com.agree.aweb.controller.signature" + SPLITOR
+ "cn.com.agree.aweb.controller.api"))
.paths(PathSelectors.any())
.build(); } private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("网关管控接口")
// .description("更多请关注http://www.baidu.com")
// .termsOfServiceUrl("http://www.baidu.com")
// .contact("sunf")
.version("v1.1")
.build();
}
}
第三步则是在Controller类里加入swagger注解,这样对应的接口可以在项目启动后通过url路径(http://localhost:8080/swagger-ui.html)访问到。
@ApiOperation(value = "用户登录",tags = {"用户管理"})
@ApiImplicitParams({ @ApiImplicitParam(name = "userName", value = "用户名", paramType = "body",required=true),
@ApiImplicitParam(name = "password", value = "密码", paramType = "body",required=true) })
@RequestMapping(value = "/login", method = RequestMethod.POST)
public RestResult<String> apiMethod(
@Valid @RequestBody LoginRequestDTO loginRequestDTO, Errors errors,
HttpServletRequest request) throws Exception {
//业务处理
return null;
}
请求参数在路径上的注解PathVariable使用,示例如下:
@ApiOperation("根据id刪除后端服务")
@DeleteMapping("/v1.1/{id}")
@ApiImplicitParam(name = "id", value = "后端服务id", paramType = "path", dataType = "string", required = true)
@OperationLog(name = "删除后端服务")
public Object deleteServerById(@PathVariable("id") String id, @RequestParam("api_id") String apiId) {
return apiServiceService.deleteServerById(id, apiId);
}
以上三步骤就是简单的swagger基本使用步骤。
访问swaggerUi后,页面如下:点开对应的接口,可以直接在浏览器进行测试接口是否可用。

swagger 以及swaggerUI使用的步骤的更多相关文章
- 【swagger】 swagger-ui的升级版swagger-bootstrap-ui
swagger-bootstrap-ui是基于swagger-ui做了一些优化拓展: swagger-ui的界面: swagger-bootstrap-ui界面: 相比于原生的swagger-ui , ...
- Springboot集成Swagger操作步骤
特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...
- 使用swagger实现web api在线接口文档
一.前言 通常我们的项目会包含许多对外的接口,这些接口都需要文档化,标准的接口描述文档需要描述接口的地址.参数.返回值.备注等等:像我们以前的做法是写在word/excel,通常是按模块划分,例如一个 ...
- Spring Boot 项目实战(三)集成 Swagger 及 JavaMelody
一.前言 上篇介绍了 Logback 的集成过程,总体已经达到了基本可用的项目结构.本篇主要介绍两个常用工具,接口文档工具 Swagger .项目监控工具 JavaMelody 的集成步骤. 二.Sw ...
- 使用swagger实现web api在线接口文档(转载)
一.前言 通常我们的项目会包含许多对外的接口,这些接口都需要文档化,标准的接口描述文档需要描述接口的地址.参数.返回值.备注等等:像我们以前的做法是写在word/excel,通常是按模块划分,例如一个 ...
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api(二十)
一:Swagger介绍 Swagger是当前最好用的Restful API文档生成的开源项目,通过swagger-spring项目 实现了与SpingMVC框架的无缝集成功能,方便生成spring r ...
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api
本文作者:小雷FansUnion-一个有创业和投资经验的资深程序员-全球最大中文IT社区CSDN知名博主-排名第119 实际项目中非常需要写文档,提高Java服务端和Web前端以及移动端的对接效率 ...
- 最新版Swagger 3升级指南和新功能体验!
Swagger 3.0 发布已经有一段时间了,它于 2020.7 月 发布,但目前市面上使用的主流版本还是 Swagger 2.X 版本和少量的 1.X 版本,然而作为一名合格的程序员怎么能不折腾新技 ...
- springboot集成swagger实战(基础版)
1. 前言说明 本文主要介绍springboot整合swagger的全过程,从开始的swagger到Knife4j的进阶之路:Knife4j是swagger-bootstarp-ui的升级版,包括一些 ...
随机推荐
- 可用的 .net core 支持 RSA 私钥加密工具类
首先说明 MS并不建议私钥加密,而且.net 于安全的考虑,RSACryptoServiceProvider类解密时只有同时拥有公钥和私钥才可以,原因是公钥是公开的,会被多人持有,这样的数据传输是不安 ...
- Sqlite教程(1) SQLiteOpenHelper
首先,创建DbHelper对象,继承SQLiteOpenHelper. Configuration是自行创建的工具类,里面都是App的一些环境设置. public class DbHelper ext ...
- Linux基础篇一:Linux历史
记得有个GNU组织,里面有个GPL协议(通用版权许可协议),如果软件被打上GPL,那么任何人都可以对这个软件进行修改.
- python编程常用功能(随时添加)
1 pandas查看DataFrame列或具体值数据类型 2 left join/right join/inner join的区别 3 df_series.value_counts() 4 删除dat ...
- Linux安装svn服务
安装svn yum -y install subversion 创建保存仓库/版本库的目录 mkdir -p /opt/data/svndir 创建仓库/版本库, 这里同时创建两个仓库(project ...
- git实用手册
git.exe clone --progress -v "git@code.sohuno.com:huimingtao/focus-wap.git" "D:\worksp ...
- smarty模板配置代码详细说明及如何注册自己的smarty函数
下面为smarty模板的配置文件,smarty配置的详细说明以及如何注册自己所需要的smarty函数 config.inc.php <?php /** * Smarty 调用 * www.daf ...
- QLIKVIEW添加数据库连接
1.点击文件 2.点击编辑脚本 3.点击 工具-ODBC管理员 4.添加DSN 5.里面的常规操作不再赘述 6.完成
- 三:mysql条件查询
1:查询工资等于5000的员工
- commonhelper 通用类:计时器、数组去重、自动生成日志编号、生成随机数、处理字符串
using System;using System.Collections.Generic;using System.Diagnostics;using System.Text; namespace ...