日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

SpringBoot 整合 knife4j

發布時間:2024/9/27 javascript 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringBoot 整合 knife4j 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

            • 簡述
            • 2. 導入依賴
            • 3. 創建配置類
            • 4. 創建User實體類
            • 5. 創建開發接口
            • 6. 啟動項目

簡述

Swagger是一款測試文檔Api接口,具體用法見SpringBoot整合Swagger。而knife4j是對Swagger進一步封裝,其優化了api文檔的界面。官網https://doc.xiaominfo.com/knife4j/documentation/

2. 導入依賴

新建一個SpringBoot的項目,導入需要的依賴

<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>3.0.3</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
3. 創建配置類
package com.gblfy.config;import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.service.ApiInfo; import springfox.documentation.service.Contact; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket;@Configuration @EnableKnife4j public class Knife4jConfig {@Beanpublic Docket createRestApi() {return new Docket(DocumentationType.SWAGGER_2).useDefaultResponseMessages(false).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.basePackage("com.gblfy.controller")).paths(PathSelectors.any()).build();}private ApiInfo apiInfo() {return new ApiInfoBuilder().description("Swagger3接口文檔").contact(new Contact("哈哈", "https://gblfy.com", "gblfy@qq.com")).version("v1.1.0").title("適用于前后端分離統一的接口文檔").build();} }
4. 創建User實體類
package com.gblfy.entity;import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data;@Data @ApiModel(value = "用戶實體") public class User {@ApiModelProperty(value = "id")private Integer id;@ApiModelProperty(value = "用戶名")private String username;@ApiModelProperty(value = "性別,0男,1女")private Integer sex;}
5. 創建開發接口
package com.gblfy.controller;import com.example.demo.User; import io.swagger.annotations.*; import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore;@RestController @Api(tags = "用戶接口")//描述UserController的信息 public class UserController {@ApiOperation(value = "查詢用戶",notes = "根據id查詢用戶")@ApiImplicitParam(paramType = "path",name="id",value = "用戶id",required = true)@GetMapping("/user/query/{id}")public String getUserById(@PathVariable Integer id) {return "/user/"+id;}@ApiResponses({@ApiResponse(code=200,message="刪除成功"),@ApiResponse(code=500,message="刪除失敗")})@ApiOperation(value = "刪除用戶",notes = "根據id刪除用戶")@DeleteMapping("/user/delete/{id}")public Integer deleteUserById(@PathVariable Integer id) {return id;}@ApiOperation(value = "添加用戶",notes = "添加一個用戶,傳入用戶名和性別")@ApiImplicitParams({@ApiImplicitParam(paramType = "query",name="username",value = "用戶名",required = true,defaultValue = "張三"),@ApiImplicitParam(paramType = "query",name="sex",value = "性別",required = true,defaultValue = "女")})@PostMapping("/user")public String addUser(@RequestParam String username,@RequestParam String sex){return username+","+sex;}@ApiOperation(value="修改用戶",notes = "根據傳入的用戶信息修改用戶")@PutMapping("/user")public String updateUser(@RequestBody User user){return user.toString();}@GetMapping("/ignore")@ApiIgnorepublic void ignoreMethod(){}}
6. 啟動項目

測試。啟動項目,在瀏覽器輸入http://localhost:8080/doc.html就可以看到接口的信息,展開接口,就能看到所有的接口詳細信息

展開后可以對各個請求進行測試。選擇接口后點擊調試,輸入相關的參數點擊發送按鈕即可。

總結

以上是生活随笔為你收集整理的SpringBoot 整合 knife4j的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。