当前位置: 首页 > article >正文

Knife4j生成和展示API文档工具

Knife4j用户生成后端项目的Controller接口文档

①、依赖

knife4j-openapi3-jakarta-spring-boot-starter

②、创建配置类

@Configuration
public class Knife4jConfiguration{
	
	@Bean
	public OpenAPI openAPI(){
		return new OpenAPI()
			.info(new Info()
					.title("hello-knife4j项目API")
					.version("1.0")
					.description("hello-knife4j项目的接口文档"));
	}

	@Bean
	public GroupedOpenApi userAPI(){
		return GroupedOpenApi.builder().group("用户信息管理")
			.pathsToMatch("/user/**")
			.build();
	}

	@Bean
	public GroupedOpenApi systemAPI(){
		return GroupedOpenApi.builder().group("产品信息管理")
			.pathsToMatch("/product/**")
			.build();
	}
}

③、启动SpringBoot项目

http://localhost:8080/doc.html
在这里插入图片描述

Controller接口中常用的注解

  • @Tag 组标签
  • @Oprration 左侧栏的标签说明
  • @Parameter 请求参数
  • @Schema 响应参数
@RestController
@RequestMapping("/user")
@Tag(name="用户信息管理")
public class UserController{
	
	@GetMapping("getById")
	@Oprration(name="根据ID查询用户信息")
	public User getById(@Parameter(description = "用户ID") @ReqeustParam("id") Integer id){
		User user = new User();
		user.setId(id);
		user.setName("zhangsan");
		user.setAge(10);
		return user;
	}
}
@Data
@Schema(description = "用户信息实体")
public class User{
	
	@Schema(description = "用户ID")
	private Integer id;
	
	@Schema(description = "用户姓名")
	private String name;
	
	@Schema(description = "用户年龄")
	private Integer age;
}

在这里插入图片描述


http://www.kler.cn/a/503472.html

相关文章:

  • 国产Docker可视化面板Dpanel的安装与功能解析
  • 宝塔面板使用 GoAccess Web 日志分析教程
  • [ Spring ] Install MongoDB on Ubuntu24
  • 基于springboot+vue+微信小程序的宠物领养系统
  • esp32在编译是报错在idf中有该文件,但是说没有
  • Unity 自定义批量打包工具
  • Python自学 - “包”的创建与使用(从头晕到了然)
  • 电子邮件安全及核心概念
  • 探索AI与鸿蒙开发新领域:从《星火AI使用指南》到《鸿蒙应用开发宝典》
  • 远程连接不上怎么回事?
  • HTML5 滚动动画详解
  • 常见的php框架有哪几个?
  • 利用Java爬虫按图搜索1688商品(拍立淘)的实践指南
  • npm install 报错常见的解决方法
  • 论文阅读:SplatMAP: Online Dense Monocular SLAM with 3D Gaussian Splatting
  • 解决VMWare虚拟机“无法获取vmci驱动程序版本”的问题
  • 如何应对突然忘记 MySQL 登录密码的情况?
  • 宁德时代C++后端开发面试题及参考答案
  • 【DevOps】Jenkins配置钉钉邮件通知
  • Certificates do not conform to algorithm constraints
  • 【HarmonyOS之旅】基于ArkTS开发(二) -> UI开发二
  • 图形和动画本地化
  • 微信小程序:播放音频
  • 新垂直电商的社交传播策略与AI智能名片2+1链动模式S2B2C商城小程序的应用探索
  • 用css和html制作太极图
  • (EMNLP-2023)预训练语言模型的稀疏低秩自适应