Spring Boot 框架 集成 Knife4j(内含源代码)
Spring Boot 框架 集成 Knife4j(内含源代码)
源代码下载链接地址:
https://download.csdn.net/download/weixin_46411355/87480176
目录
- Spring Boot 框架 集成 Knife4j(内含源代码)
- `源代码下载链接地址:`[https://download.csdn.net/download/weixin_46411355/87480176](https://download.csdn.net/download/weixin_46411355/87480176)
- 零、创建一个SpringBoot项目
- 一、pom.xml导入Knife4j的依赖
- 二、创建Knife4j的配置类
- 三、application.yml配置文件
- 四、Controller层
- 五、运行启动类,访问并测试
零、创建一个SpringBoot项目
一、pom.xml导入Knife4j的依赖
第一步:在maven项目的pom.xml中引入Knife4j的依赖包,代码如下
<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>2.0.9</version>
</dependency>
二、创建Knife4j的配置类
第二步:创建Swagger配置依赖,代码如下:
package com.github.xiaoymin.knife4j.config;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.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;@EnableSwagger2WebMvc
@Configuration
public class Knife4jConfiguration {@Bean(value = "defaultApi2")public Docket defaultApi2() {Docket docket=new Docket(DocumentationType.SWAGGER_2).apiInfo(new ApiInfoBuilder().title("swagger-bootstrap-ui-demo RESTful APIs").description("# swagger-bootstrap-ui-demo RESTful APIs").termsOfServiceUrl("http://www.xx.com/").contact("xx@qq.com").version("1.0").build())//分组名称.groupName("2.X版本").select()//这里指定Controller扫描包路径.apis(RequestHandlerSelectors.basePackage("com.github.xiaoymin.knife4j.controller")).paths(PathSelectors.any()).build();return docket;}}
三、application.yml配置文件
application.yml
server:port: 17790
spring:mvc:pathmatch:matching-strategy: ANT_PATH_MATCHE
最終整个工程目录结构如下图:
四、Controller层
IndexController.java包含一个简单的RESTful接口,代码示例如下:
package com.github.xiaoymin.knife4j.controller;import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;@Api(tags = "首页模块")
@RestController
public class IndexController {@ApiOperation(value = "向客人问好")@ApiImplicitParam(name = "name",value = "姓名",required = true)@GetMapping("/sayHi")public ResponseEntity<String> sayHi(@RequestParam(value = "name")String name){return ResponseEntity.ok("Hi:"+name);}}
五、运行启动类,访问并测试
此时,启动Spring Boot工程,在浏览器中访问:http://localhost:17790/doc.html
界面效果图如下:
测试