告别 swagger-ui ,我选择了这款神器!

news/2024/7/19 15:36:41 标签: html, js, css, github, javascript
htmledit_views">
js_content">
点击上方“果汁简历”,选择“置顶公众号”一、介绍

knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案(在非Java项目中也提供了前端UI的增强解决方案),前身是swagger-bootstrap-ui,取名knife4j是希望她能像一把匕首一样小巧,轻量,并且功能强悍!

二、开源仓库

  • Github

https://github.com/xiaoymin/swagger-bootstrap-ui
  • 码云

https://gitee.com/xiaoym/knife4j

三、功能特性

  • 简洁

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

  • 个性化配置

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

  • 增强

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

四、功能预览

  • 在线预览

http://knife4j.xiaominfo.com/doc.html
  • 选择不同接口

  • Authorize

  • swagger实体

包含了swagger实体的相关信息

  • swagger全局设置

全局参数设置

  • 离线文档导出

Knife4j提供导出4种格式的离线文档(Html\Markdown\Word\Pdf)

  • 个性化设置

  • api文档

  • 搜索功能

五、使用简介

  • 项目结构

  • 目前主要的模块

目前主要的模块包括:模块名称说明:knife4j为Java MVC框架集成Swagger的增强解决方案knife4j-admin云端Swagger接口文档注册管理中心,集成gateway网关对任意微服务文档进行组合集成knife4j-extensionchrome浏览器的增强swagger接口文档ui,快速渲染swagger资源knife4j-service为swagger服务的一系列接口服务程序knife4j-frontknife4j-spring-ui的纯前端静态版本,用于集成非Java语言使用swagger-bootstrap-uiknife4j的前身,最后发布版本是1.9.6
  • 单纯皮肤增强

不使用增强功能,纯粹换一个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>


六、总结

针对knife4j的总结,无非就是牛逼来形容,切实的解决了swagger ui不够友好的问题,而且还可以集成到其他语言的api项目中,真真切切的需要感谢开发作者提供了这么好的工具供我们使用,小伙伴是不是心动了,赶紧去试试吧!enjoy it!

往期精彩回顾

让人又爱又恨的 Lombok,到底该不该用

Delombok 是个啥?居然可破 Lombok?

跳槽的必要条件是有一份好的简历

时候为自己的后半生考虑了——致奔三的互联网人

点个赞呗


http://www.niftyadmin.cn/n/1331937.html

相关文章

我辞退了一位简历造假的程序员

点击上方 果汁简历 &#xff0c;选择“置顶公众号”优质文章&#xff0c;第一时间送达【编者按】这个社会的竞争越来越激烈&#xff0c;为了能让自己得到一份高薪的工作&#xff0c;很多人都选择了走捷径&#xff0c;弄一份假的简历去面试&#xff0c;觉得这样更容易通过招聘&a…

40 个 Spring Boot 常用注解

点击上方“果汁简历”&#xff0c;选择“置顶公众号”一、Spring Web MVC 与 Spring Bean 注解Spring Web MVC 注解RequestMappingRequestMapping注解的主要用途是将Web请求与请求处理类中的方法进行映射。Spring MVC和Spring WebFlux都通过RquestMappingHandlerMapping和Reque…

爆赞!Java全能开发面试手册V2.0版本正式上线!

开篇对于Java后端的朋友来说&#xff0c;这应该是最全面最完整的面试备战仓库&#xff0c;为了更好地整理每个模块&#xff0c;本文参考了很多网上的优质博文&#xff0c;项目&#xff0c;大厂内部员工&#xff0c;力求不漏掉每一个知识点&#xff0c;有很多朋友靠着这些内容进…

Git安装与配置Gitee仓库

文章目录安装Git配置GitGit仓库上传安装Git 下载Git 如果下载失败或速度过慢&#xff0c;尝试使用GitHub文件加速或GitHub国内镜像安装Git&#xff0c;默认安装就行&#xff0c;一直点Next 配置Git 打开终端执行以下两条命令&#xff0c;自行替换Gitee的用户名和邮箱 git c…

IDEA那些既好用又好玩的30多款宝贝插件,你知道多少?

点击上方“果汁简历”&#xff0c;选择“置顶公众号”安装插件教程在这里直接搜索就行了强烈推荐的插件Presentation Assistant 快捷键展示录屏或者共享的时候&#xff0c;效果极佳Codota— 代码智能提示还可以搜索相关代码的示例Codota还包含一个网站&#xff1a;https://www.…

这些年 SpringBoot 的 @Value 你用对了吗?

一、前言在日常开发中&#xff0c;经常会遇到需要在配置文件中&#xff0c;存储 List 或是 Map 这种类型的数据。Spring 原生是支持这种数据类型的&#xff0c;以配置 List 类型为例&#xff0c;对于 .yml 文件配置如下&#xff1a;test:list:- aaa- bbb- ccc对于 .properties …

这些年 Java8 的 Optional 你用对了吗?

来源&#xff1a;oschina.net/dzone.com/articles/understanding-accepting-and-leveraging-optional-in从 Java 8 引入的一个很有趣的特性是 Optional 类。Optional 类主要解决的问题是臭名昭著的空指针异常&#xff08;NullPointerException&#xff09; —— 每个 Java 程序…

外卖红包天天领!最高可领取 20 块

这几天我发现一个神仙公众号每天都可领外卖红包美团饿了么都支持少则几块钱多则几十块钱掐指一算一年省下来的钱能在三里屯买房近一大步了入口我先放这儿具体怎么操作我后面会讲大家可以先关注上如何领红包首先点击下方卡片关注后进入公众号然后点击菜单栏即可跳转到领红包页面…