SpringBoot集成swagger2,生成API文档

1、添加依赖

        <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 -->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.9.2</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.9.2</version>
        </dependency>

2、编写swagger配置类

package com.zhaoyan.demo;


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.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;

@Configuration
public class SwaggerConf {

    public Docket createRestApi(){
        Docket docket = new Docket(DocumentationType.SWAGGER_2);
        docket.apiInfo(apiInfo());
        docket.select().
                apis(RequestHandlerSelectors.basePackage("com.zhaoyan.demo"))
                .paths(PathSelectors.any()).build();
        return docket;
    }

    private ApiInfo apiInfo(){
        return new ApiInfoBuilder()
                .title("Api文档")//标题
                .description("restful风格接口API")//描述
                .version("1.0")//版本
                .contact("zhaoyan")
                .build();
    }
}

3、开启Swagger2

package com.zhaoyan.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@EnableSwagger2
@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

4、restful接口

package com.zhaoyan.demo.random;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

@Api(tags = "获取随机数")
@RestController
public class RandomController {

    @ApiOperation("随机数")
    @RequestMapping(value = "/random",method = RequestMethod.GET)
    public String getRandom(){
        //Math.random()方法可以随机产生一个[0.0,1.0]区间的双精度的浮点数。
        Double random = Math.random();
        return String.valueOf(Math.random());
    }
}

5、Swagger2文档
启动SpringBoot项目,访问(http://localhost:8080/swagger-ui.html)

猜你喜欢

转载自blog.csdn.net/liulili1991/article/details/83714355
今日推荐