Springfox是什么,有什么用?

Springfox基于Swagger,能更方便的集成到spring boot 中,Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。Swagger的目标是对REST API定义一个标准的和语言无关的接口,可让人和计算机无需访问源码、文档或网络流量监测就可以发现和理解服务的能力。当通过Swagger进行正确定义,用户可以理解远程服务并使用最少实现逻辑与远程服务进行交互。与为底层编程所实现的接口类似,Swagger消除了调用服务时可能会有的猜测。

Springfox的依赖

io.springfox

springfox-swagger2

2.4.0

io.springfox

springfox-swagger-ui

2.4.0

Springfox的配置

@Configuration

@EnableSwagger2

public class SwaggerConfig {

@Bean

public Docket demoApi() {

return new Docket(DocumentationType.SWAGGER_2)

.groupName("demo")

.genericModelSubstitutes(DeferredResult.class)

.useDefaultResponseMessages(false)

.forCodeGeneration(false)

//.pathMapping("/") //根路径

.select()

.paths(PathSelectors.regex("/user/.*"))//筛选展示的接口,使用PathSelectors.any(),展示所有接口

.build()

.apiInfo(demoApiInfo())

;

}

//api信息

private ApiInfo demoApiInfo() {

ApiInfo apiInfo = new ApiInfo("自己平台的api",//大标题

"swagger搭建api平台",//小标题

"1.0",//版本

"NO terms of service",

"632104866@qq.com",//作者

"这是我的技术博客站点",//链接显示文字

"http://www.kailing.pub"//网站链接

);

return apiInfo;

}

}

测试的Controll

@RestController

@RequestMapping("/user")

public class SwaggerDemoController {

@RequestMapping(value = "/demo2",method = RequestMethod.POST)

@ApiOperation(value="测试接口1", notes="测试接口详细描述")

@ResponseBody

ModelMap getDemo(@RequestBody User user) {

ModelMap map = new ModelMap();

map.addAttribute("userId", 111);

map.addAttribute("userName", "kl博客");

return map;

}

@ResponseBody

@RequestMapping(value = "/demo3", method = RequestMethod.POST)

@ApiOperation(value="测试接口2", notes="测试接口详细描述",code = 200,produces = "application/json")

public ModelMap getDemoa(@RequestParam("name") String demoName, @RequestParam String content) {

ModelMap map = new ModelMap();

map.addAttribute("result",demoName + "AAA");

return map;

}

@ResponseBody

@ApiIgnore //使用这个注解忽略这个接口

@RequestMapping(value = "/demo4", method = RequestMethod.POST)

public ModelMap getDemob(@RequestParam String content) {

ModelMap map = new ModelMap();

map.addAttribute("result",new java.util.Date());

return map;

}

}

在浏览器输入http://localhost:8080/swagger-ui.html,可查看是否整合成功

至此我们的额api在线文档整合完成了,下面是效果图

springfox源码_Spring boot整合Springfox在线生成restful的api doc相关推荐

  1. springboot事务回滚源码_Spring Boot中的事务是如何实现的

    1. 概述 一直在用SpringBoot中的@Transactional来做事务管理,但是很少想过SpringBoot是如何实现事务管理的,今天从源码入手,看看@Transactional是如何实现事 ...

  2. mongodb java项目 源码_spring项目整合mongodb进行开发

    spring项目整合mongodb进行开发: MongoDB的性能指标: 100个并发,插入550万条记录的平均吞吐量:大约4100条/秒 MONGODB实际上是一个内存数据库,先将数据保存到内存,然 ...

  3. springfox源码_springfox 源码分析(四) 配置类初始化

    时间:2019-5-23 12:46:50 地点:单位.家中 @EnableSwagger2 有了二三章的理解,此时我们再来看EnableSwagger2注解的内容 @Retention(value ...

  4. 源码通透-mybatis源码分析以及整合spring过程

    源码通透-mybatis源码分析以及整合spring过程 mybatis源码分析版本:mybaits3 (3.5.0-SNAPSHOT) mybatis源码下载地址:https://github.co ...

  5. 【附源码】计算机毕业设计JAVA在线购书商城系统

    [附源码]计算机毕业设计JAVA在线购书商城系统 目运行 环境项配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(Inte ...

  6. 【附源码】计算机毕业设计JAVA在线影视点播系统

    [附源码]计算机毕业设计JAVA在线影视点播系统 目运行 环境项配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(Inte ...

  7. Java精品项目源码第121期电影在线观看系统

    Java精品项目源码第121期电影在线观看系统 大家好,小辰今天给大家介绍一个基于Spring + SpringMVC + MyBatis实现的电影在线观看系统,演示视频文章末尾公众号对号查询观看即可 ...

  8. 【小程序源码】圣诞节头像框制作生成支持多模板

    提前给大家发一款可以制作圣诞帽头像的一款小程序 里面有多种模板选择,当然啦里面不只是可以制作圣诞帽 还可以制作贴图头像框,各种卡通,卡哇伊,男神女神标等等模板可以制作的 另外还支持检测你的手机型号,自 ...

  9. springfox源码_springfox-swagger原理解析与使用过程中遇到的坑

    swagger简介 swagger确实是个好东西,可以跟据业务代码自动生成相关的api接口文档,尤其用于restful风格中的项目,开发人员几乎可以不用专门去维护rest api,这个框架可以自动为你 ...

最新文章

  1. 使用c#生成高品质小空间的缩略图
  2. DL之simpleNet:利用自定义的simpleNet(设好权重)对新样本进行预测、评估、输出梯度值
  3. 深入学习SAP UI5框架代码系列之八:谈谈 SAP UI5 的视图控件 ID,以及 SAP UI5 视图和 Angular 视图的异同
  4. Java 远程mapduce_java – 如何远程运行mapreduce作业
  5. Windows2008管理---第12章 终端服务器
  6. 安装Oracle提示OracleMTSRecoveryService 已经存在,解决方法
  7. jvisualvm监控java,配置 jvisualvm 监控Java虚拟机
  8. Anaconda如何更新pip
  9. CCF201903-2 二十四点游戏(JAVA版)
  10. 小学生计算机兴趣班名字,小学生网名大全
  11. 构建共线矩阵的两种惊艳操作
  12. java readable_Java-Readable
  13. 「MBR」- 主引导记录(Master Boot Record) @20210315
  14. Linux CentOS 7修改分辨率
  15. Docker技术PPT分享给大家
  16. 解决TypeError:Cannot read properties of undefined并深入解读TypeError错误类型
  17. 三-五功能/半亮/25%亮/全亮/爆闪/SOS_专用应急灯手电筒IC方案
  18. acc--›Android无障碍开发手势操作
  19. 一文了解DCC-GARCH模型
  20. 模拟stack/queue/priority_queue

热门文章

  1. python ioc di_Sping(一)——IOC/DI
  2. 漫画 | 你真的会用烙铁焊接吗?
  3. 会飞的汽车来了!旋翼式陆空两栖智能飞车研发成功
  4. 手把手教你研发属于自己的智能无人机
  5. 拿不到offer全额退款 | 第四期人工智能 NLP / CV 课 培训招生
  6. Java excel 比较_java 实现两excel(或csv)文件的比对(以某几列作为键值,比对指定列的值差异)...
  7. c 类别构造函数需要包含所有成员吗_C++默认成员函数解析
  8. qt 关闭窗口的槽函数_勇哥的VC++应用框架学习之QT(1) 信号槽、按钮控件、opencv读取显示图片...
  9. springboot 获取客户端ip_JAVA如何获取客户端IP地址和MAC地址
  10. python大数据后期教学_大数据处理之道(十分钟学会Python)