Swagger2

pom.xml:

		<!--swagger-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.6.1</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.6.1</version>
        </dependency>

Swagger2类:

package com.example.shopgoods.common.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
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;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

/**
* @Author: zp
* @Date: 2019/4/19 13:43
* @Description:
*/

/**
* Swagger2配置类
* 在与spring boot集成时,放在与Application.java同级的目录下。
* 通过@Configuration注解,让Spring来加载该类配置。
* 再通过@EnableSwagger2注解来启用Swagger2。
*/

@Configuration
@EnableSwagger2
@Profile({"dev"})

public class Swagger2 {
/**
* 创建API应用
* apiInfo() 增加API相关信息
* 通过select()函数返回一个ApiSelectorBuilder实例,用来控制哪些接口暴露给Swagger来展现,
* 本例采用指定扫描的包路径来定义指定要建立API的目录。
*
* @return
*/
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.example.controller"))
.paths(PathSelectors.any())
.build();
}


/**
* 创建该API的基本信息(这些基本信息会展现在文档页面中)
* 访问地址:http://项目实际地址/swagger-ui.html
* @return
*/
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Spring Boot集成Swagger2构建RESTful APIs")
.description("更多请关注<Swagger使用指南>")
.termsOfServiceUrl("https://blog.csdn.net/sanyaoxu_2/article/details/80555328")
.version("2.6.1")
.build();
}

}

Controller层代码列如:

    /**
     * 下单校验接口
     * @param checkOrderRequestDTO
     * @return
     */
    @ApiOperation(value = "下单校验接口")
    @PostMapping("/check")
    @ApiImplicitParam(name = "checkOrderRequestDTO", value = "下单时商品信息", dataType = "CheckOrderRequestDTO")
    public Result<Boolean> checkOrder(@RequestBody CheckOrderRequestDTO checkOrderRequestDTO) {
        return Boolean.TRUE;
    }

入参和出参的注释:

package com.ecshop.common.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;

/**
* @Author: zp
* @Date: 2019/4/17 18:06
* @Description:
*/
@Data
@ApiModel(value = "CheckOrderRequestDTO", description = "下单时商品信息")
public class CheckOrderRequestDTO {
//商品id
@NotNull(message = "商品id不能为null")
@ApiModelProperty(value = "商品id")
private Integer goodsId;

//商品属性id
@NotNull(message = "商品属性id不能为null")
@ApiModelProperty(value = "商品属性id")
private  Integer goodsAttrId;

//下单时购买的商品数量
@NotNull(message = "商品数量不能为null")
@ApiModelProperty(value = "商品数量")
private Integer goodsNumber;

}

完成上述代码添加上,启动Spring Boot程序,访问:http://localhost:8080/swagger-ui.html

相关文献:

Swagger使用指南
Swagger与RestFul 集成 以及 注解使用Demo
微服务之Swagger
关于Swagger @ApiModel 返回内容注释不显示问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值