尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

knife4j接口文档的使用

knife4j接口文档的使用
📅 发布时间:2026/7/23 7:31:15

前言:

Knife4j是Swagger (OpenAPI)的增强版 UI,专为 Java Spring Boot 项目设计。它比原生 Swagger UI 更美观、功能更强大(支持离线文档、参数缓存、调试等)。
由于你使用的是Spring Boot 3.2.x和Java 17,你需要使用Knife4j 4.x版本(基于 OpenAPI 3 / SpringDoc),而不是旧版的 3.x(基于 Swagger 2)。

更多使用及详情可参考Knife4j文档链接

一.如何查看 Spring Boot版本

Spring Boot版本号可在启动日志的打印中查看或者查看pom.xml文件中如下内容

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.2.12</version><!--✅ 稳定版,避免兼容性问题--><relativePath/></parent>

启动日志截图:

二.引入knife4j

第一步:引入依赖到pom.xml文件中

<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId><version>4.5.0</version><!--推荐使用最新稳定版--></dependency>

第二步:修改TestController

packagecom.example.demo.controller;importio.swagger.v3.oas.annotations.Operation;importio.swagger.v3.oas.annotations.tags.Tag;importlombok.extern.slf4j.Slf4j;importorg.springframework.web.bind.annotation.GetMapping;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RestController;@Slf4j@RestController@RequestMapping("/test")@Tag(name="测试控制器",description="用于测试日志和基础功能")// 👈 分组标签publicclassTestController{@GetMapping("/test/log")@Operation(summary="测试日志输出",description="调用此接口会在后端控制台打印各级别日志")// 👈 接口说明publicStringtestLog(){log.trace("这是 TRACE 日志");log.debug("这是 DEBUG 日志");log.info("这是 INFO 日志");log.warn("这是 WARN 日志");log.error("这是 ERROR 日志");return"日志已经打印,请查看 IDEA 控制台";}}

第三步:修改UserController

packagecom.example.demo.controller;importcom.baomidou.mybatisplus.core.metadata.IPage;importcom.example.demo.entity.User;importcom.example.demo.service.UserService;importio.swagger.v3.oas.annotations.Operation;importio.swagger.v3.oas.annotations.Parameter;importio.swagger.v3.oas.annotations.tags.Tag;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.web.bind.annotation.*;importjava.util.HashMap;importjava.util.Map;@RestController@RequestMapping("/users")@Tag(name="用户管理",description="用户的增删改查接口")// 👈 分组标签publicclassUserController{@AutowiredprivateUserServiceuserService;@GetMapping("/page")@Operation(summary="分页查询用户",description="根据页码和每页大小查询用户列表")publicMap<String,Object>getPage(@Parameter(description="当前页码",example="1")@RequestParam(defaultValue="1")intpageNum,@Parameter(description="每页数量",example="10")@RequestParam(defaultValue="10")intpageSize){IPage<User>userPage=userService.getUserPage(pageNum,pageSize);Map<String,Object>result=newHashMap<>();result.put("code",200);result.put("data",userPage.getRecords());result.put("total",userPage.getTotal());returnresult;}}

第四步:启动应用并访问
1.重启 Spring Boot 应用。
2.打开浏览器访问:

http://localhost:8080/doc.html

如图:

点击分页接口截图:
会根据我们用knife4j写的信息而展示

相关新闻

  • 2026春见耙耙柑苗木选购指南:正规供应商甄选与行业趋势分析 - 优质品牌商家
  • 马鞍山漏水检测维修权威推荐:卫生间-厨房-阳台-屋顶天花板漏水维修:靠谱防水补漏公司团队TOP5推荐(2026最新深度调研实测榜单) - 即刻修防水
  • 基于51单片机的步进电机控制系统—正/反转、加/减速

最新新闻

  • AMD提出Agent Computer概念,PC与AC未来能否共存?
  • NVIDIA Vera CPU技术详解:88核Olympus、176线程与1.2TB/s内存
  • 亲身到店体验泉州亨得利名表服务中心|最新电话和维修地址(2026年7月更新) - 亨得利官方
  • 雷达宁波服务热线与网点地址2026年7月最新版——客户售后无忧 - 亨得利官方服务中心
  • Castor:命令行视频投屏工具的技术原理与应用实践
  • Gemini 3.0:智能开发工具链与React组件生成实战

日新闻

  • 亨得利盐城维修点在哪里?手表维修保养地址指南**公示(2026年7月最新) - 亨得利官方
  • 提升.NET API安全性:Boxed.AspNetCore.Swagger认证授权最佳实践
  • 帝舵佛山**网点地址更新:2026年7月售后热线电话与服务客户指南 - 帝舵中国官方服务中心

周新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号