添加 Swagger 依赖

<!-- https://mvnrepository.com/artifact/io.springfox/springfox-boot-starter -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>

创建 Swagger 配置类

package com.app.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.oas.annotations.EnableOpenApi;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket; @Configuration
@EnableOpenApi
public class SwaggerConfig { @Bean
public Docket createRestApi() {
return new Docket(DocumentationType.OAS_30)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.app.controller"))
.paths(PathSelectors.any())
.build();
} private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("RESTful APIs")
.description("RESTful APIs")
.termsOfServiceUrl("http://localhost:8080/")
.contact(new Contact("jack", "www.baidu.com", "jack@qq.com"))
.version("1.0")
.build();
}
}

编写接口文档

package com.app.controller;

import java.util.logging.Logger;

import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation; @Api(tags = "文章接口")
@RestController
@RequestMapping("/chapter")
public class ArticleController { Logger logger = Logger.getLogger("com.app.controller.ChapterController"); @ApiOperation(value = "获取指定id的文章", notes = "根据URL的id获取指定文章的信息")
@ApiImplicitParam(name = "id", value = "文章id", required = true, dataType = "Long", dataTypeClass = Long.class)
@GetMapping("/{id}")
public String getOne(@PathVariable Long id) {
logger.info(id + "");
return id + "";
} @ApiOperation(value = "删除指定id的文章", notes = "根据URL的id删除指定文章的信息")
@ApiImplicitParam(name = "id", value = "文章id", required = true, dataType = "Long", dataTypeClass = Long.class)
@DeleteMapping("/{id}")
public String deleteOne(@PathVariable Long id) {
logger.info(id + "");
return id + "";
}
}

注解说明:

  • @Api:描述类/接口的主要用途。
  • @ApiOperation:描述方法用途,给 API 增加说明。
  • @ApiImplicitParam:描述方法的参数,给参数增加说明。
  • @ApiImplicitParams:描述方法的参数(Multi-Params),给参数增加说明。
  • @ApiIgnore:忽略某类/方法/参数的文档。

测试访问

通过访问以下链接进入 swagger 页面。

http://localhost:8080/swagger-ui/index.html

Spring Boot 配置 Swagger(3.0.0 版本)的更多相关文章

  1. Spring boot 配置 swagger

    1.maven配置包 <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 --> <dep ...

  2. spring boot 配置swagger UI

    springboot集成swaggerUI 有这样的需求 1.在每个接口上都增加一个字段: 2.接口文档只展示满足一定条件URL的接口 配置文件 详细看代码 import org.springfram ...

  3. Spring boot集成Swagger,并配置多个扫描路径

    Spring boot集成Swagger,并配置多个扫描路径 1:认识Swagger Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目 ...

  4. spring boot+mybatis+swagger搭建

    环境概述 使用的开发工具:idea 2018 3.4 环境:jdk1.8 数据库:MariaDB (10.2.21) 包管理:Maven 3.5 Web容器:Tomcat 8.0 开发机系统:Wind ...

  5. Spring Boot 集成 Swagger 生成 RESTful API 文档

    原文链接: Spring Boot 集成 Swagger 生成 RESTful API 文档 简介 Swagger 官网是这么描述它的:The Best APIs are Built with Swa ...

  6. Spring Boot 集成 Swagger 构建接口文档

    在应用开发过程中经常需要对其他应用或者客户端提供 RESTful API 接口,尤其是在版本快速迭代的开发过程中,修改接口的同时还需要同步修改对应的接口文档,这使我们总是做着重复的工作,并且如果忘记修 ...

  7. Spring Boot整合Swagger报错:"this.condition" is null

    前段时间看到群里有吐槽swagger整合问题,当时没仔细看,总以为是姿势不对. 这两天正好自己升级Spring Boot版本,然后突然出现了这样的一个错误: Caused by: java.lang. ...

  8. Spring Boot 集成 Swagger,生成接口文档就这么简单!

    之前的文章介绍了<推荐一款接口 API 设计神器!>,今天栈长给大家介绍下如何与优秀的 Spring Boot 框架进行集成,简直不能太简单. 你所需具备的基础 告诉你,Spring Bo ...

  9. Spring Boot初识(3)- Spring Boot整合Swagger

    一.本文介绍 如果Web项目是完全前后端分离的话(我认为现在完全前后端分离已经是趋势了)一般前端和后端交互都是通过接口的,对接口入参和出参描述的文档就是Mock文档.随着接口数量的增多和参数的个数增加 ...

  10. Redis篇之操作、lettuce客户端、Spring集成以及Spring Boot配置

    Redis篇之操作.lettuce客户端.Spring集成以及Spring Boot配置 目录 一.Redis简介 1.1 数据结构的操作 1.2 重要概念分析 二.Redis客户端 2.1 简介 2 ...

随机推荐

  1. ViT简述【Transformer】

    目录 结构概述 图像切patch Patch0 Position Embedding Multi-Head Attention 代码[Pytorch] Transformer在NLP任务中表现很好,但 ...

  2. js中各种事件监听

    html.push('<input type="button" id="autocount_' + sysTime + '" class="la ...

  3. QQ空间数据抓取

    title: QQ空间数据抓取 author: 杨晓东 permalink: QQ空间数据抓取 date: 2021-10-02 11:27:04 categories: - 嗯哼 tags: - 无 ...

  4. TP-Link路由器后台密码爆破

    title: TP-Link路由器后台密码爆破 author: 杨晓东 permalink: TP-Link路由器后台密码爆破 date: 2021-10-02 11:27:04 categories ...

  5. [UnityShader]说厌了的遮挡显示

    首先是效果 这个其实有相当多的地方在说了,我就不嚼舌根了 大概原理:一个Shader两个Pass,第一个Pass不管深度,都渲染,但是不写入深度,第二个Pass几乎没有改动,因为后执行,会覆盖掉第一个 ...

  6. Java实现简单个人所得税计算器相关操作代码

    /** * 个税计算器 * 1.通过键盘输入用户的月薪 * 2.百度搜素个税计算方法,计算出应缴纳的税款 * 3.直到键盘输入88,则退出程序(使用break语句退出循环) * 应纳税所得额=工资收入 ...

  7. matlab简单区间列频数统计输出

    最近的一个作业要有这个输出计算,直接拿来用的函数没怎么找到,合计着就编一个吧,没多少时间仔细编,但能用. 程序支持:Matlab2019b,以往的版本应该也能用. function [d,zb1,ps ...

  8. HttpClient线程池&重试机制

    HttpClientUtils package com.example.http_thread.util; import org.apache.http.HttpEntityEnclosingRequ ...

  9. Unity3D使用脚本动态创建、调用动画(转)

    原文链接: https://blog.csdn.net/pigautumn/article/details/81781403 需求场景:由若干个数量不确定的物体从上到下排列,需要间隔0.1s依次从左到 ...

  10. echart lengend 选中事件

    根据列选项 来改变echart y轴数值 前4个指标 甲方要求 95~100   第5个 要求 0~10如果混合起来 就是 0~100 这时的我 不由的破口大骂!!!但是 该干的活还是得干 干货如下: