knife4j


knife4j簡介

前身:swagger-bootstrap-ui

swagger簡介

Swagger是一個API接口管理工具,支持在線測試接口數據,根據配置自動生成API文檔,結合spring mvc而提供界面化方法文檔的一個開源框架。

Swagger主要的項目

Swagger是一組開源項目,主要項目如下:

Swagger-tools:提供各種與Swagger進行集成和交互的工具。例如模式檢驗、Swagger 1.2文檔轉換成Swagger 2.0文檔等功能。
Swagger-core: 用於Java/Scala的的Swagger實現。與JAX-RS(Jersey、Resteasy、CXF…)、Servlets和Play框架進行集成。
Swagger-js: 用於JavaScript的Swagger實現。
Swagger-node-express: Swagger模塊,用於node.js的Express web應用框架。
Swagger-ui:一個無依賴的HTML、JS和CSS集合,可以為Swagger兼容API動態生成優雅文檔。
Swagger-codegen:一個模板驅動引擎,通過分析用戶Swagger資源聲明以各種語言生成客戶端代碼。
Swagger-editor:可讓使用者在瀏覽器里以YAML格式編輯Swagger API規范並實時預覽文檔。可以生成有效的Swagger JSON描述,並用於所有Swagger工具(代碼生成、文檔等等)中。

Swagger-Bootstrap-UI簡介

Swagger-Bootstrap-UI是springfox-swagger的增強UI實現,為Java開發者在使用Swagger的時候,能擁有一份簡潔、強大的接口文檔體驗。

knife4j特點

  • 文檔說明:根據Swagger的規范說明,詳細列出接口文檔的說明,包括接口地址、類型、請求示例、請求參數、響應示例、響應參數、響應碼等信息,使用swagger-bootstrap-ui能根據該文檔說明,對該接口的使用情況一目了然。

  • 在線調試:提供在線接口聯調的強大功能,自動解析當前接口參數,同時包含表單驗證,調用參數可返回接口響應內容、headers、Curl請求命令實例、響應時間、響應狀態碼等信息,幫助開發者在線調試,而不必通過其他測試工具測試接口是否正確,簡介、強大。

knife4j使用

1.創建springboot項目

2.添加依賴

<dependencies>
    <dependency>
        <groupId>com.github.xiaoymin</groupId>
        <artifactId>knife4j-spring-boot-starter</artifactId>
        <!--在引用時請在maven中央倉庫搜索最新版本號-->
        <version>2.0.2</version>
    </dependency>
</dependencies>

3.配置類

@Configuration
@EnableSwagger2
@EnableKnife4j
@Import(BeanValidatorPluginsConfiguration.class)
public class SwaggerConfiguration {
 
@Bean(value
= "defaultApi2") public Docket defaultApi2() { Docket docket=new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) //分組名稱 .groupName("2.X版本") .select() //這里指定Controller掃描包路徑 .apis(RequestHandlerSelectors.basePackage("com.swagger.bootstrap.ui.demo.new2")) .paths(PathSelectors.any()) .build(); return docket; }
  private ApiInfo apiInfo() {
   return new ApiInfoBuilder()
   .title("大學生專業學科競賽項目過程管理系統")
  .description("大學生專業學科競賽項目過程管理系統t文檔")
  .termsOfServiceUrl("")
  .version("3.0.0")
  .build();
  }
}

注解說明

@EnableSwagger2

該注解是Springfox-swagger框架提供的使用Swagger注解,該注解必須加

@EnableKnife4j

該注解是knife4j提供的增強注解,Ui提供了例如動態參數、參數過濾、接口排序等增強功能,如果你想使用這些增強功能就必須加該注解,否則可以不用加

4.訪問

在瀏覽器輸入地址:http://host:port/doc.html

 

 

 

 

 

 

 

 

 

knife4j資料

文檔:https://doc.xiaominfo.com/guide/useful.html

示例:https://gitee.com/xiaoym/swagger-bootstrap-ui-demo

博文:https://www.cnblogs.com/fby698/p/11581845.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM