点击上方“Java知音”,选择“置顶公众号”

技术文章第一时间送达!

1.概览

knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案,前身是swagger-bootstrap-ui,取名kni4j是希望她能像一把匕首一样小巧、轻量、并且功能强悍!

knife4j的前身是swagger-bootstrap-ui,为了契合微服务的架构发展,由于原来swagger-bootstrap-ui采用的是后端Java代码+前端Ui混合打包的方式,在微服务架构下显的很臃肿,因此项目正式更名为knife4j。

更名后主要专注的方面

  • 前后端Java代码以及前端Ui模块进行分离,在微服务架构下使用更加灵活

  • 提供专注于Swagger的增强解决方案,不同于只是改善增强前端Ui部分

2.项目模块

目前主要的模块包括:

3.功能特性

简洁

基于左右菜单式的布局方式,是更符合国人的操作习惯吧,文档更清晰…

个性化配置

个性化配置项,支持接口地址、接口description属性、UI增强等个性化配置功能…

增强

接口排序、Swagger资源保护、导出Markdown、参数缓存众多强大功能…

4.业务场景

不使用增强功能,纯粹换一个swagger的前端皮肤

不使用增强功能,纯粹换一个swagger的前端皮肤。这种情况是最简单的,你项目结构下无需变更

可以直接引用swagger-bootstrap-ui的最后一个版本1.9.6或者使用knife4j-spring-ui

老版本引用

<dependency><groupId>com.github.xiaoymin</groupId><artifactId>swagger-bootstrap-ui</artifactId><version>1.9.6</version>
</dependency>

新版本引用

<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-ui</artifactId><version>${lastVersion}</version>
</dependency>

Spring Boot项目单体架构使用增强功能

在Spring Boot单体架构下,knife4j提供了starter供开发者快速使用

<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>${knife4j.version}</version>
</dependency>

该包会引用所有的knife4j提供的资源,包括前端Ui的jar包

Spring Cloud微服务架构

在Spring Cloud的微服务架构下,每个微服务其实并不需要引入前端的Ui资源,因此在每个微服务的Spring Boot项目下,引入knife4j提供的微服务starter

<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-micro-spring-boot-starter</artifactId><version>${knife4j.version}</version>
</dependency>

在网关聚合文档服务下,可以再把前端的ui资源引入

<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>${knife4j.version}</version>
</dependency>

5.界面效果

在线预览

http://knife4j.xiaominfo.com/doc.html

Authorize

Swagger Models

全局参数设置

离线文档下载

其他个性化设置

关键字搜索

6.总结

非常不错的一个开源项目,Gitee上已经有近2k的star,感兴趣的朋友不妨试试!

Github
https://github.com/xiaoymin/swagger-bootstrap-ui
码云
https://gitee.com/xiaoym/knife4j

END

Java面试题专栏

【41期】盘点那些必问的数据结构算法题之链表

【42期】盘点那些必问的数据结构算法题之二叉堆

【43期】盘点那些必问的数据结构算法题之二叉树基础

【44期】盘点那些必问的数据结构算法题之二分查找算法

【45期】盘点那些必问的数据结构算法题之基础排序

【46期】盘点那些必问的数据结构算法题之快速排序

【47期】六大类二叉树面试题汇总解答

【48期】盘点Netty面试常问考点:什么是 Netty 的零拷贝?

【49期】面试官:SpringMVC的控制器是单例的吗?

【50期】基础考察:ClassNotFoundException 和 NoClassDefFoundError 有什么区别

我知道你 “在看”

感觉Swagger功能不够强大?knife4j这款神器了解一下....相关推荐

  1. 录音转成文字 android,安卓手机自带的录音转文字功能这么强大,堪称会议神器!你会用吗...

    原标题:安卓手机自带的录音转文字功能这么强大,堪称会议神器!你会用吗 有的小伙伴在开会时经常需要录音,然后要对录音进行整理变成文字稿,每次都要花很多的时间和精力,难不成你还在傻傻的手动录入,别傻了!不 ...

  2. 终于放弃了单调的 Swagger 了,选择了这款神器 Knife4j

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:最美分享Coder toutiao.com/i6789135 ...

  3. Excel功能的强大

    最近在处理数据,感觉excel功能非常强大,下面列举用到的一些功能 1.数据默认填充0,选中数据区域--查找选择--定位条件--空值--输入0--同时按ctrl+enter,空白位置默认填充0 2.数 ...

  4. 取代 Postman + Swagger!这款神器功能更强大,界面更炫酷!

    作为一位后端开发,我们平时经常需要维护API文档.对API接口进行调试.有时候还得Mock数据.Postman虽然作为接口调试工具非常好用,但是对于维护API文档这类工作却不太合适.今天给大家推荐一款 ...

  5. fooview辅助功能 shell_FV浮动阅览器fooView——一款功能十分强大的浮动按钮

    小编闲来无事,又在酷安里闲逛,偶然发现了一个好玩有用的APP.用完之后,毫不犹豫的保留了下来.而且,特意去把几个功能想重的APP给卸载了.如果没用过的朋友,可要听小编好好叨叨一次了.相信,这次会是纯纯 ...

  6. 热门图表软件推荐,哪款更功能更强大?

    在如今的数据化时代,各种企业都需要有一套高效的报表制作工具.而图表是报表中最常用.也是最重要的一部分,因此选择一款优秀的图表软件显得尤为重要.本文将为大家介绍5款热门图表软件,并突出介绍VeryRep ...

  7. 还在用 Xshell ?试试这款炫酷的 SSH 终端工具吧,功能很强大!

    由于需要连接远程 Linux 服务器,早期使用过 Putty,SecureCRT,后面主要使用 Xshell. 自从接触了 MobaXterm之后,个人感觉比 Xshell 更好用,堪称SSH客户端的 ...

  8. 4款让人骄傲的国产软件,功能过于强大,却被误认为是外国佬研发

    国产软件往往被贴上"流氓.弹屏.套路深"等负面标签.出于偏见,一些功能强大的良心国产软件,却被误认为成外国人开发的. 下面4款实用软件为"国产"正名,扭转许多人 ...

  9. 颜值爆表!Redis 官方可视化工具来啦,功能真心强大!

    最近逛了一下Redis官方网站,发现Redis不仅推出了很多新特性,而且还发布了一款可视化工具RedisInsight.试用了一下感觉非常不错,最关键的是能支持RedisJSON之类的新特性,这是第三 ...

最新文章

  1. 分页技巧_实现第一个分页功能(回复列表中的分页)
  2. 腾讯云,搭建Docker环境
  3. 转 Struct 和 Union区别 以及 对内存对齐方式的说明
  4. [置顶] 完美程序员的10种品质
  5. H3C交换机配置学习随笔
  6. jQuery学习之五---效果
  7. ax.spines——matplotlib坐标轴设置
  8. Python写入文件的工具类
  9. 突发!美国国会发函要求 Facebook 立即停止 Libra 项目
  10. TS中的unknown类型
  11. Spring中的Service/DAO/DTO
  12. html5 调用摄像头 支持IE,ie调用不了摄像头 为什么电脑IE浏览器无法启动摄像头...
  13. java shiro原理_Shiro的原理及Web搭建
  14. CTU Open Contest 2019 J. Beer Vision
  15. java连连看开题报告_JAVA连连看
  16. 帝国 cms 列表 php,帝国cms数据表详细中文说明
  17. java自行车DH32,中国国际自行车嘉年华之Enduro、DH装备篇
  18. CAD图层的顺序的调整
  19. 计算机二级python基础知识总结-江苏省计算机二级python样卷
  20. 细说react源码中的合成事件

热门文章

  1. 电动汽车又“火了” 面对频繁自燃事故 蔚来不得不这样做...
  2. 金融诈骗中男性更易受骗:损失数额更大
  3. java switch finally_JavaSE
  4. apk、ipa包size优化晋级手段
  5. python故事_python的故事
  6. MFC小笔记:父子窗口传递消息
  7. 我的docker随笔11:Dockerfile编写
  8. 将x86平台的Linux控制台重定向到串口
  9. 【kafka】Kafka中的动态配置源码分析
  10. 【java】ConcurrentHashMap遍历 --- 弱一致性的迭代器(Iterator)实现原理