关于springboot集成swagger及knife4j的增强问题

作者:潇 七 时间:2023-11-29 00:43:50 

参考链接:狂神的Swagger笔记

  • 号称世界上最流行的API框架

  • Restful Api 文档在线自动生成器 => API 文档 与API 定义同步更新

  • 直接运行,在线测试API

  • 支持多种语言 (如:Java,PHP等)

  • 官网:swagger

SpringBoot集成Swagger 添加maven依赖


<dependency>
 <groupId>io.springfox</groupId>
 <artifactId>springfox-swagger2</artifactId>
 <version>2.9.2</version>
</dependency>

<dependency>
 <groupId>io.springfox</groupId>
 <artifactId>springfox-swagger-ui</artifactId>
 <version>2.9.2</version>
</dependency>

要求:jdk 1.8 + 否则swagger2无法运行 要使用Swagger,我们需要编写一个配置类-SwaggerConfig来配置 Swagger


package com.yf.exam.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

import java.util.ArrayList;

@Configuration
@EnableSwagger2
public class SwaggerConfig {

//配置了swagger的Docket 的 bean 实例
 @Bean
 public Docket docket(){
   return new Docket(DocumentationType.SWAGGER_2)
       .apiInfo(apiInfo());
 }
 //配置 swagger 信息 = apiInfo
 private ApiInfo apiInfo(){
   //作者信息
   Contact contact = new Contact("潇七", "https://www.xhost.vip/", "2278023068@qq.com");
   return new ApiInfo("API文档",
       "接口信息",
       "v1.0",

contact,
       "Apache 2.0",
       "http://www.apache.org/licenses/LICENSE-2.0",
       new ArrayList()
   );
 }
}

访问测试 :http://localhost:8080/swagger-ui.html ,可以看到swagger的界面;
-

关于springboot集成swagger及knife4j的增强问题

knife4j

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

简洁

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

个性化配置

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

增强

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

SpringBoot集成Knife4j 添加maven依赖


<dependency>
     <groupId>com.github.xiaoymin</groupId>
     <artifactId>knife4j-spring-boot-starter</artifactId>
     <!--在引用时请在maven中央仓库搜索最新版本号-->
     <version>2.0.4</version>
</dependency>

-访问测试 :http://localhost:8080/doc.html ,可以看到knife4j的界面;

关于springboot集成swagger及knife4j的增强问题

离线文档导出

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

来源:https://blog.csdn.net/m0_48402871/article/details/114966519

标签:springboot,swagger,knife4j
0
投稿

猜你喜欢

  • Java日期操作方法工具类实例【包含日期比较大小,相加减,判断,验证,获取年份等】

    2023-11-25 12:14:40
  • 你所不知道的Spring的@Autowired实现细节分析

    2023-11-25 05:40:47
  • OpenCV实现直线拟合

    2023-06-22 15:22:37
  • 基于Java中的数值和集合详解

    2023-11-25 08:12:13
  • Android SharedPreferences存储用法详解

    2023-08-07 08:25:34
  • Java十分钟精通类 封装 继承

    2023-11-25 10:55:58
  • ConcurrentHashMap是如何实现线程安全的你知道吗

    2023-11-28 23:14:25
  • 解决Java提示正在尝试分配更低的访问权限问题

    2023-11-04 09:31:08
  • Spring JDK动态 代理实现过程详解

    2023-11-16 19:42:15
  • java文件操作工具类分享(file文件工具类)

    2023-11-24 22:32:47
  • Java基础之面向对象机制(多态、继承)底层实现

    2023-11-12 02:59:59
  • Java操作pdf的工具类itext的处理方法

    2023-07-14 11:51:53
  • 超全MyBatis动态代理详解(绝对干货)

    2023-11-14 02:28:19
  • 使用AOP的@Around后无返回值的解决

    2023-11-24 13:04:09
  • Android RecyclerView基本使用详解

    2023-07-24 21:13:30
  • Java如何给Word文档添加多行文字水印

    2023-11-10 07:40:58
  • 深入理解Java设计模式之备忘录模式

    2023-09-20 06:16:43
  • 深入探讨Linux静态库与动态库的详解(一看就懂)

    2023-07-04 01:02:28
  • Spring框架应用的权限控制系统详解

    2023-11-11 14:17:11
  • 小米Java程序员第二轮面试10个问题 你是否会被刷掉?

    2023-11-13 09:00:29
  • asp之家 软件编程 m.aspxhome.com