當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
SpringBoot 整合 knife4j
生活随笔
收集整理的這篇文章主要介紹了
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的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ETL异构数据源Datax_Oracle
- 下一篇: 运行项目到 微信开发者工具和浏览器