1. 简介
    
     Swagger
    
    作为一款API文档生成工具,虽然功能已经很完善了,但是还是有些不足的地方
    
     。knife4j
    
    可以看做是
    
     Swagger的增强版
    
    ,之前使用过
    
     Swagger的
    
    可以无缝切换到
    
     knife4j
    
    。
   
2.使用
1)引入依赖:
<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-spring-boot-starter</artifactId>
    <version>3.0.3</version>
</dependency>2)创建swagger配置依赖
@Configuration
@EnableSwagger2
public class Knife4jConfig {
    @Bean(value = "defaultApi2")
    public Docket defaultApi2() {
        Docket docket = new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(new ApiInfoBuilder()
                        .title("我的标题")
                        .description("我的描述")
                        // .termsOfServiceUrl("http://www.xx.com/")
                        .contact(new Contact("hello", "https://knife.blog.csdn.net", "xx@qq.com"))
                        .version("1.0")
                        .build())
                //分组名称
                .groupName("hurw")
                .select()
                //指定Controller扫描路径。可以不具体到controller,它会扫描指定路径下的所有
                .apis(RequestHandlerSelectors.basePackage("com.example.demo"))
                .paths(PathSelectors.any())
                .build();
        return docket;
    }
}3)编写代码
    @ApiOperation(value = "插入一条数据哦!",httpMethod = "POST")
    @RequestMapping("insert")
    @ResponseBody
    @ApiOperationSupport(author = "hurw")
    public int insert(@RequestBody StudentVO studentVO){
        log.info("开始进行数据插入!");
        studentService.save(studentVO);
        log.info("数据插入结束!");
        return 100;
    }注意:
@ApiOperation(value = "插入一条数据哦!",httpMethod = "POST")
    
     
      该注解中最好把httpMethod的请求类型带上,不然的话同一个接口,会显示delete、put、post等所有类型的,如下:
     
    
   
     
   
4)启动并访问:
knife4j跟Tomcat共用一个端口,默认Tomcat是8080。访问地址:
http://localhost:8080/doc.html
     
   
    5) 接口调试:
    
     
      按照如下操作,填写请求参数后,点击“发送”按钮,即可调试,请求参数的json体是自动生成的,无需自己手动构建,非常方便、快速,也让我们摆脱了postman,前端开发人员值需要看一下这个接口文档就知道该如何调用了,大爱!
     
    
    。
   
     
   
 
版权声明:本文为Summer_And_Opencv原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
