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

王爷追妻有点忙河北百度seo关键词排名

王爷追妻有点忙,河北百度seo关键词排名,微信商城怎么开发,网站保留密码 怎么做一、依赖作用与关系 1. springdoc-openapi-starter-webmvc-api • 核心功能: 基于 OpenAPI 3 规范,自动生成 API 文档元数据(JSON 格式),并集成 Spring MVC。 提供Tag Operation、Schema 等注解,支持通过…

一、依赖作用与关系

1. springdoc-openapi-starter-webmvc-api

核心功能
基于 OpenAPI 3 规范,自动生成 API 文档元数据(JSON 格式),并集成 Spring MVC。
提供@Tag @Operation@Schema 等注解,支持通过代码描述接口和模型。

2. knife4j-openapi3-jakarta-spring-boot-starter

核心功能
提供增强的 Swagger UI 界面(Knife4j),支持文档搜索、离线导出、接口调试等扩展功能。
依赖 springdoc-openapi 生成元数据,仅负责界面渲染和交互优化。

定位
Swagger UI 的替代品,提供更友好的文档展示和操作体验


二、使用步骤详解

1. 添加依赖

pom.xml 中引入以下依赖(需注意版本兼容性):

<!-- OpenAPI 3 元数据生成 -->
<dependency><groupId>org.springdoc</groupId><artifactId>springdoc-openapi-starter-webmvc-api</artifactId><version>2.3.0</version>
</dependency><!-- Knife4j 增强 UI -->
<dependency><groupId>com.github.xingfudeshi</groupId><artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId><version>4.5.0</version>
</dependency>
版本说明

springdoc-openapi ≥ 2.0:支持 Spring Boot 3.x(Jakarta EE 9+)
knife4j-openapi3-jakarta ≥ 4.0:适配 Jakarta 命名空间


2. 基础配置

application.yml 中添加必要配置:

springdoc:swagger-ui:path: /swagger-ui  # 原生 UI 路径(可选)api-docs:path: /v3/api-docs      # OpenAPI JSON 元数据路径default-consumes-media-type: application/jsondefault-produces-media-type: application/json# Knife4j 配置(可选)
knife4j:enable: truesetting:language: zh-CN         # 中文界面enable-footer: false    # 禁用页脚广告

3. 配置类(可选)

自定义全局 OpenAPI 元数据(如标题、版本):

import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class OpenApiConfig {@Beanpublic OpenAPI customOpenAPI() {return new OpenAPI().info(new Info().title("电商系统 API 文档").version("1.0").description("管理后台接口文档"));}
}

4. 接口代码注解

使用注解描述接口和模型:

4.1 接口描述(Controller)
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;@RestController
@RequestMapping("/brand")
@Tag(name = "品牌管理", description = "商品品牌相关接口")
public class BrandController {@PostMapping("/create")@Operation(summary = "创建品牌", description = "需要管理员权限")public Result<Long> createBrand(@RequestBody @Valid BrandCreateReqVO reqVO,@Parameter(description = "操作人 ID", required = true) @RequestHeader("X-User-Id") Long userId) {// 业务逻辑}
}
4.2 模型描述(DTO/VO)
import io.swagger.v3.oas.annotations.media.Schema;@Data
@Schema(name = "BrandCreateReqVO", description = "品牌创建请求体")
public class BrandCreateReqVO {@Schema(description = "品牌名称", example = "Apple", requiredMode = REQUIRED)@NotBlank(message = "名称不能为空")private String name;@Schema(description = "排序值", example = "1", minimum = "0")@Min(value = 0, message = "排序值最小为0")private Integer sort;
}

5. 访问文档界面

启动项目后访问以下 URL:

功能URL
Knife4j 增强 UIhttp://localhost:8080/doc.html
原生 Swagger UIhttp://localhost:8080/swagger-ui
OpenAPI 元数据http://localhost:8080/v3/api-docs

三、Knife4j 特色功能

1. 文档增强特性

离线导出:支持 Markdown/HTML/Word 格式导出
接口搜索:全局关键字搜索 API
调试增强:表单参数自动生成、响应结果格式化

安全控制(生产建议)

knife4j:basic:enable: trueusername: adminpassword: 123456

四、常见问题

1. 依赖冲突

现象:与旧版 Springfox 库(如 springfox-swagger2)冲突
解决:移除所有 springfox 相关依赖

2. 注解不生效

检查项

  1. 确保 @EnableWebMvc 未覆盖默认配置
  2. 验证 @Schema 是否标注在 Getter 方法或字段上

3. 是否需要同时引入两个依赖?

必须springdoc-openapi 生成元数据,knife4j 负责渲染 UI
若仅需原生 UI:可只依赖 springdoc-openapi-ui


五、总结

通过 springdoc-openapi + knife4j 的组合,开发者可以:

  1. 标准化:遵循 OpenAPI 3 规范生成文档
  2. 高效协作:提供清晰的接口定义和调试工具
  3. 美观易用:Knife4j 的增强 UI 提升使用体验

建议在开发阶段启用文档,生产环境通过 knife4j.enable=false 关闭访问。

http://www.dtcms.com/wzjs/403757.html

相关文章:

  • wordpress无法连接数据库长沙网站包年优化
  • 丹徒网站建设青岛百度竞价
  • 网站一直建设中seo是什么职务
  • dw怎样去除网站做的页面模板如何在百度上做产品推广
  • 做网站策划计划书关键词优化怎么做
  • 服装设计一般要学几年深圳网络推广seo软件
  • 专做母婴食品的网站中国市场营销网
  • 免费网络加速器app下载seo教学平台
  • 免费的网站入口在哪找资源
  • 网站建设电话营销拓客软件
  • 网站开发ppt软文编辑
  • 定制柜设计网站哪里有软件培训班
  • 织梦网站更换域名谷歌推广seo
  • 广州做网站信科网络合肥做网络推广的公司
  • 医药b2b网站有哪些网站快速优化排名推荐
  • 高校档案网站建设成品网站1688入口网页版怎样
  • 装修公司网站建设方案宁波seo推广费用
  • 做网站营业执照经营范围怎么填写唐山seo排名
  • 北京建设工程交易网株洲seo排名
  • 重庆知名网站英文外链seo兼职
  • 柯桥教育网站建设如何制作一个网页页面
  • 网站发展阶段怎么做代刷网站推广链接0元价格
  • 图文设计公司起名南京seo网络推广
  • 最新网页制作官网seo推广工具
  • 商店小程序seo优化培训多少钱
  • 购物车功能网站怎么做的网络培训网站
  • 零食网站色调搭配怎麽做seo的概念是什么
  • 北京最新发布会直播优化网站推广排名
  • 不备案 国内网站360网站推广
  • 海口建设seo广州工作好吗