欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Swagger的简单使用

程序员文章站 2024-03-02 16:22:04
...

引入依赖

        <!--swagger-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.9.2</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.9.2</version>
        </dependency>
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>20.0</version>
        </dependency>

编写SwaggerConfig配置类

@Configuration
//开启Swagger2
@EnableSwagger2
public class SwaggerConfig {
    //配置Swagger的Docket的Bean实例
    @Bean
    public Docket platformApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                //是否启动Swagger
                .enable(true)
                .select()
                //RequestHandlerSelectors 配置扫描接口的方式
                //withMethodAnnotation 扫描方法上的注解
                .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
                //过滤什么路径
                .paths(PathSelectors.any())
                .build();
    }

    //配置Swagger的信息
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                //页面标题
                .title("测试Swagger")
                //描述
                .description("测试Swagger")
                //版本号
                .version("1.0.0")
                //创建人
                .contact(new Contact("xxx", "", ""))
                .build();
    }
}

编写TestSwagger测试类

@RestController
//模块名称
@Api(tags = "测试Swagger模块")
@RequestMapping("/test-swagger")
public class TestSwaggerController {
    //操作名称
    @ApiOperation("测试getmapper操作")
    @GetMapping("/getmapper/{id}")
    public testEntity testGetMapping(@PathVariable("id") int testEntityId ){
        return new testEntity(testEntityId,"testEntityName"+testEntityId);
    }

    @Data
    @AllArgsConstructor
    //模型名和描述
    @ApiModel(value="测试实体类", description="测试实体类描述")
    class testEntity{
        //模型参数
        @ApiModelProperty(value = "id")
        private Integer testEntityId;
        @ApiModelProperty(value = "name")
        private String testEntityName;
    }
}

测试结果

Swagger的简单使用
Swagger的简单使用
Swagger的简单使用
Swagger的简单使用