当前位置:   article > 正文

springboot集成knife4j接口文档,swagger算个什么东西_kn4j swagger

kn4j swagger

介绍

在前后端配合开发中,后端人员提供的接口文档对前后端的完美配合往往起到举足轻重的作用,一个漂亮美观且功能强大的接口文档更是可以轻易获得前端妹子的青睐。而传统的接口文档插件swagger在漂亮美观功能强大方面它却一边的都不沾。今天给大家介绍一款基于swagger并作出增强的接口文档插件:kniife4j,推荐它的理由是漂亮美观且功能强大,且集成过程简单。下面是它的示例图

在这里插入图片描述


下面我们开始将knife4j接口文档插件集成进springboot项目中。


第一步:添加pom依赖

<!-- 引入knife4j依赖 -->
<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-spring-boot-starter</artifactId>
</dependency>
  • 1
  • 2
  • 3
  • 4
  • 5

第二步:添加knife4j配置类

@Configuration
@EnableSwagger2WebMvc
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("学生服务")
                        .termsOfServiceUrl("http://www.xx.com/")
                        .contact("xx@qq.com")
                        .version("1.0")
                        .build())
                //分组名称
                .groupName("2.X版本")
                .select()
                //这里指定Controller扫描包路径
                .apis(RequestHandlerSelectors.basePackage("com.idealhooray.student.controller"))
                .paths(PathSelectors.any())
                .build();
        return docket;
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

第三步:业务接口

@Api(tags = "男学生")
@RestController
@RequestMapping("/boy")
public class BoyStudentController {

    @ApiOperation("根据姓名获取男学生")
    @ApiImplicitParam(name = "name", value = "姓名", required = true, paramType = "query")
    @GetMapping("/byName")
    public String getBoyStudentByName(@RequestParam("name") String name) {

        return "男学生:" + name;
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
@Api(tags = "女学生")
@RestController
@RequestMapping("/girl")
public class GirlStudentController {

    @ApiOperation("根据姓名获取女学生")
    @ApiImplicitParam(name = "name", value = "姓名", required = true, paramType = "query")
    @GetMapping("/byName")
    public String getGirlStudentByName(@RequestParam("name") String name) {

        return "女学生:" + name;
    }

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

项目结构

src
│  ├─main
│  │  ├─java
│  │  │  └─com
│  │  │      └─idealhooray
│  │  │          └─student
│  │  │              ├─config
│  │  │          		└─Knife4jConfiguration.java
│  │  │              └─controller
│  │  │          		└─BoyStudentController.java
│  │  │          		└─GirlStudentController.java
│  │  │          	 └─StudentApplication.java
│  │  └─resources
│  │     └─application.yml

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

第四步:打开接口文档

启动项目后,打开接口文档http://ip:port/doc.html

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/空白诗007/article/detail/891358
推荐阅读
相关标签
  

闽ICP备14008679号