接口文档从Swagger升级成knife4j使用教程(springboot)


一、Knife4j是一个为Swagger接口文档赋能的工具

二、引入pom

<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.2</version>
</dependency>

三、配置类
@Configuration
@EnableSwagger2
public class Knife4jConfiguration {

@Bean(value = "defaultApi3")
public Docket defaultApi2() {
Docket docket=new Docket(DocumentationType.OAS_30)
.apiInfo(new ApiInfoBuilder()
.title("Spring Security JWT 整合demo")
.description("# swagger-bootstrap-ui-demo RESTful APIs")
.termsOfServiceUrl("http://www.xx.com/")
.contact(new Contact("Kevin Yu", "http://example.com", "624249507@qq.com"))
.version("1.0")
.build())
//分组名称
.groupName("3.X版本")
.select()
//这里指定Controller扫描包路径
.apis(RequestHandlerSelectors.basePackage("com.ycs.study.web.controller"))
.paths(PathSelectors.any())
.build();
return docket;
}

private ApiInfo apiInfo(String title, String desc) {
return new ApiInfoBuilder()
.title(title)
.description(desc)
//服务条款网址
.termsOfServiceUrl("http://127.0.0.1:9091/cim-sgsc")
.version("1.0")
.contact(new Contact("Kevin Yu", "", "624249507@qq.com"))
.build();
}
}
四、api
@Slf4j
@ApiSupport(order = 3)
@Api(tags = "Index服务", value = "该参数没什么意义,在UI界面上也看到,所以不需要配置")
@RestController("/index")
public class IndexController {

@ApiOperationSupport(order = 33)
@ApiOperation(value = "get请求", notes = "111")
@ApiImplicitParams( {
@ApiImplicitParam(name = "name", value = "姓名", required = true, dataType = "String", paramType = "query"),
@ApiImplicitParam(name = "age", value = "年龄", required = true, dataType = "int", paramType = "query")
})
@RequestMapping("/get")
public String get(String name, int age) {
return name + age;
}

@ApiOperation(value = "刷新token", notes = "")
@GetMapping("/query")
public String query(){
return "query";
}

@PostMapping(value = "/postTest", produces = "application/json; charset=utf-8")
public String postTest(String name){
return "name";
}

}

五、请求路径
http://localhost:8088/doc.html#/home



免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM