SpringBoot2.2.6 整合 Swagger2文档 使用BootstrapUI页面

第一步、引入pom


		<swagger-ui.version>2.9.2</swagger-ui.version>
        <swagger2.version>2.9.2</swagger2.version>
        <swagger-bootstrap-ui.version>1.8.5</swagger-bootstrap-ui.version>
	
	<!-- swagger-ui -->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>${swagger-ui.version}</version>
        </dependency>
        <!-- swagger2 -->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>${swagger2.version}</version>
        </dependency>
        <!-- 引入swagger-bootstrap-ui包 -->
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>swagger-bootstrap-ui</artifactId>
            <version>${swagger-bootstrap-ui.version}</version>
        </dependency>

swagger-bootstrap-ui是springfox-swagger的增强UI实现,为Java开发者在使用Swagger的时候,能拥有一份简洁、强大的接口文档体验

2,加入SwaggerConfig配置类

package com.cibn.boss.order.config;

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;

/**
 * SwaggerConfig
 * @desc: Swagger配置
 * @version:
 * @createTime: 2020/8/06 14:36
 * @author:
 */
@Configuration
public class SwaggerConfig {

    @Bean
    public Docket createH5RestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.any())
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("海外boss api文档")
                .description("restful 风格接口")
                .version("1.0")
                .build();
    }

}

3,启动类上加上@EnableSwagger2,以及@EnableSwaggerBootstrapUI注解

package com.cibn.boss.order;

import com.github.xiaoymin.swaggerbootstrapui.annotations.EnableSwaggerBootstrapUI;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@EnableSwaggerBootstrapUI
@EnableSwagger2
@SpringBootApplication
@MapperScan(value = "com.cibn.boss.order.dao")
public class BossAppcation {
    public static void main(String[] args)
    {
        SpringApplication.run(BossAppcation.class, args);

    }
}

访问页面: http://ip:端口号/项目名/doc.html

在这里插入图片描述

Swagger 常用注解
1.@Api
用于类,表示标识这个类是swagger的资源。属性如下:

tags 表示说明,tags如果有多个值,会生成多个列表
value 表示说明,可以使用tags替代
2.@ApiOperation
用于方法,表示一个http请求的操作。属性如下:

value 用于方法描述
notes 用于提示内容
tags 用于API文档控制的标记列表,视情况而用,可以进行独立分组
3.@ApiParam
用于方法、参数、字段说明;表示对参数的添加元数据。

name 参数名
value 参数说明
required 是否必填
4.@ApiModel
用于类,表示对类进行说明,用于参数用实体类接受。

value 对象名
description 描述
5.@ApiModelProperty
用于方法、字段,表示对model属性的说明或者数据操作更改。

value 字段说明
name 重写属性名
dataType 重写属性数据类型
required 是否必填
example 举例说明
hidden 隐藏
6.@ApiIgnore
用于类、方法、方法参数,表示这个方法或者类被忽略,不在swagger-ui.html上显示。

7.@ApiImplicitParam
用于方法,表示单独的请求参数。

name 参数名
value 参数说明
dataType 数据类型
paramType 参数类型
example 举例说明
8.@ApiImplicitParams
用于方法,包含多个 @ApiImplicitParam。

9.@ApiResponses @ApiResponse
用于类或者方法,描述操作的可能响应。

code 响应的HTTP状态代码
message 响应附带的可读消息
10.@ResponseHeader
用于方法,响应头设置。

name 响应头名称
description 头描述
response 默认响应类 void
responseContainer 参考ApiOperation中配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值