关于Springboot使用knife4j说明
1. Knife4j 简介
knife4j
是为Java MVC框架集成Swagger生成Api文档的增强解决方案,前身是swagger-bootstrap-ui.
为了契合微服务的架构发展,由于原来swagger-bootstrap-ui采用的是后端Java代码+前端Ui混合打包的方式,在微服务架构下显的很臃肿,因此项目正式更名为knife4j
更名后主要专注的方面
- 前后端Java代码以及前端Ui模块进行分离,在微服务架构下使用更加灵活
- 提供专注于Swagger的增强解决方案,不同于只是改善增强前端Ui部分
模块 knife4j
为Java MVC框架集成Swagger的增强解决方案knife4j-admin
云端Swagger接口文档注册管理中心,集成gateway网关对任意微服务文档进行组合集成knife4j-extension
chrome浏览器的增强swagger接口文档ui,快速渲染swagger资源knife4j-service
为swagger服务的一系列接口服务程序knife4j-front
knife4j-spring-ui的纯前端静态版本,用于集成非Java语言使用swagger-bootstrap-ui
knife4j的前身,最后发布版本是1.9.6
2. 主要功能
2.1 核心功能
文档说明:根据Swagger的规范说明,详细列出接口文档的说明,包括接口地址、类型、请求示例、请求参数、响应示例、响应参数、响应码等信息,使用swagger-bootstrap-ui能根据该文档说明,对该接口的使用情况一目了然。
在线调试:提供在线接口联调的强大功能,自动解析当前接口参数,同时包含表单验证,调用参数可返回接口响应内容、headers、Curl请求命令实例、响应时间、响应状态码等信息,帮助开发者在线调试,而不必通过其他测试工具测试接口是否正确,简介、强大。
2.2 UI优化
个性化配置:通过个性化ui配置项,可自定义UI的相关显示信息
离线文档:根据标准规范,生成的在线markdown离线文档,开发者可以进行拷贝生成markdown接口文档,通过其他第三方markdown转换工具转换成html或pdf,这样也可以放弃swagger2markdown组件
接口排序:自1.8.5后,ui支持了接口排序功能,例如一个注册功能主要包含了多个步骤,可以根据swagger-bootstrap-ui提供的接口排序规则实现接口的排序,step化接口操作,方便其他开发者进行接口对接
3. 使用方法
3.1 导入依赖
<!--springfox-swagger-->
<dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.9.2</version>
</dependency><!--SwaggerBootstrapUi -->
<dependency><groupId>com.github.xiaoymin</groupId><artifactId>swagger-bootstrap-ui</artifactId><version>2.0.4</version>
</dependency>
3.2 Swagger2Config配置
@Configuration
@EnableSwagger2
@EnableKnife4j
public class SwaggerConfiguration {@Beanpublic Docket createRestApi() {return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.basePackage("com.test.pc")).paths(PathSelectors.any()).build();}private ApiInfo apiInfo() {return new ApiInfoBuilder().title("swagger-bootstrap-ui RESTful APIs").description("swagger-bootstrap-ui").termsOfServiceUrl("http://localhost:8080/").contact("11@qq.com").version("1.0").build();}
}
3.3 swagger-bootstrap-ui默认访问地址是:
http:// h o s t : {host}: host:{port}/doc.html
3.4
4. 常见问题及解决方案(持续更新)
4.1 Knife4j文档请求异常
这个时候在检查完配置文件,以及接口文件都没有错的情况下,可以找找是否出现了下面的情况
解决方案:
- 接口返回参数中带有List集合,且集合的属性赋予了exmpale属性,例如:
- 接口返回参数中带有对象,且对象属性赋予了exmpale属性,例如:
关于Springboot使用knife4j说明相关推荐
- Springboot集成knife4j,Failed to start bean ‘documentationPluginsBootstrapper‘;导致系统不能正常启动
Springboot集成knife4j,Springboot更新到2.6启动报错Failed to start bean 'documentationPluginsBootstrapper'; nes ...
- SpringBoot集成knife4j实现Swagger接口文档
前言:如果你是后台开发,提供restful接口给前端,建议你使用Swagger3提供restful的接口文档自动生成和在线接口调试.knife4j是对Swagger进一步封装,其优化了API文档的UI ...
- SpringBoot整合knife4j ,神仙朋友介绍的
SpringBoot 整合 knife4j " knife4j 官方文档地址 https://doc.xiaominfo.com/knife4j/ " 之前经常使用 swagger ...
- Springboot集成knife4j
Springboot集成knife4j 注:本文是 srpingboot + OCLA + knife4j 1. 添加依赖 1.1 父工程parent 的pom 文件中引入依赖 <knife4j ...
- springboot整合knife4j,从此告别手写接口文档
关于knife4j Knife4j的前身是swagger-bootstrap-ui,前身swagger-bootstrap-ui是一个纯swagger-ui的ui皮肤项目 一开始项目初衷是为了写一个增 ...
- SpringBoot整合knife4j
SpringBoot整合knife4j 导入依赖 <!-- 在需要的项目中导入依赖 --> <dependencies><dependency><groupI ...
- SpringBoot 整合 knife4j
文章目录 简述 2. 导入依赖 3. 创建配置类 4. 创建User实体类 5. 创建开发接口 6. 启动项目 简述 Swagger是一款测试文档Api接口,具体用法见SpringBoot整合Swag ...
- SpringBoot集成knife4j接口文档
knife4j介绍 knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案. 其他的详情请看官方文档: knife4j官方文档 首先创建一个spring boot 项目, ...
- SpringBoot整合knife4j(swagger)实现前后端分离可视化接口调试与接口测试
目录 1.为什么使用Knife4j 2.基本使用 2.1 pom 2.2 配置Knife4j分组 2.3 拦截器放行 2.4 实体类 2.5 SpringBoot整合基础使用 2.5.1 基础配置 2 ...
- SpringBoot整合Knife4j替代Swagger
文章目录 一.前言 二.正文 1. 基础环境 2. 引入依赖 3. 配置类-Knife4jConfig类 4. 各配置项分别演示 5. 完整代码 三.总结 一.前言 昨天收到一条评论,让我觉得有些小事 ...
最新文章
- ggtree美颜进化树-宏基因组扩增子
- 使用Mootools动态添加Css样式表代码,兼容各浏览器
- 关于如何在你的Web项目中实现对空间数据访问权限的控制(一)
- PHP:使用Zend对源码加密、Zend Guard安装以及Zend Guard Run-time support missing的解决方法
- 基于TFS实践敏捷-可视化管理
- bootstrap-媒体对象-对齐
- Java集合(一、HashMap)
- matlab slope函数,Matlab常用函数汇总
- 二级c语言改错题库,二级C语言题库-改错题(参考).doc
- java 文本文件合并_java实现文本文件合并
- Windows11在Edge浏览器中打开IE浏览器兼容的页面,在Edge浏览器打开加载ActiveX控件的页面
- D盘需要管理员权限解决办法
- 部分软件免管理员权限安装
- 腾讯推出微信企业服务平台风铃
- Hbuilder mui 相册拍照图片上传
- 巨详细,大电流线性电源(LDO)原理,看完你就明白了
- SAP 凭证跳号分析
- 20154312 曾林 EXP7 网络欺诈防范
- 流媒体之Jitterbuffer笔记
- Cadence PCB仿真使用Allegro PCB SI生成振铃ringing仿真报告及报告导读图文教程