spring boot使用swagger生成api接口文档
前言
在之前的文章中,使用mybatis-plus生成了对应的包,在此基础上,我们针对项目的api接口,添加swagger配置和注解,生成swagger接口文档
具体可以查看本站spring boot系列文章:
spring boot项目使用mybatis-plus代码生成实例
具体例子
maven配置
在使用之前,我们需要添加swagger中maven相关依赖配置
<!--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>
项目application.yml配置
swagger:
basePackage: com.lewyon.mybatislewyon #包名
title: 标题 #标题
description: lewyon #描述
version: V1.0 #版本号
以上配置包含了swagger文档展示的包名,标题以及描述,版本号等信息
springApplication添加swagger注解
在springApplication添加swagger注解之后,项目启动时,会注入swagger相关配置和代码,
项目启动成功之后
服务地址/swagger-ui.html就是当前swagger文档地址
当前项目是:http://localhost:8080/swagger-ui.html
package com.lewyon.mybatislewyon;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@EnableSwagger2
@SpringBootApplication
public class MybatislewyonApplication {
public static void main(String[] args) {
SpringApplication.run(MybatislewyonApplication.class, args);
}
}
在控制层添加swagger注解
Api 常用于描述当前Rest的模块信息
ApiOperation 则是当前方法的信息
package com.lewyon.mybatislewyon.user.controller;
import com.lewyon.mybatislewyon.user.entity.User;
import com.lewyon.mybatislewyon.user.service.UserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
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 java.util.List;
/**
* <p>
* 前端控制器
* </p>
*
* @author lewyon
* @since 2022-06-25
*/
@RestController
@RequestMapping("/user")
@Api(value = "用户", tags = {"用户操作"})
public class UserController {
@Autowired
UserService userService;
@GetMapping("/list")
@ApiOperation("用户列表")
public List<User> listUser() {
return userService.list();
}
@GetMapping("/getUser/{userId}")
@ApiOperation("用户详情")
public User getUserById(@PathVariable long userId) {
return userService.getById(userId);
}
@GetMapping("/updateUser/{user}")
@ApiOperation("更新用户")
public boolean updateUserById(User user) {
return userService.updateById(user);
}
@GetMapping("/addUser/{user}")
@ApiOperation("新增用户")
public boolean addUser(User user) {
return userService.save(user);
}
@GetMapping("/deleteUser/{id}")
@ApiOperation("删除用户")
public boolean delUserById(String id) {
return userService.removeById(id);
}
}
总结
以上就是spring boot集成swagger生成接口文档的例子,关于swagger更多配置,可以查阅swagger官方文档
文章个人博客地址:
项目源码地址:
https://gitee.com/lewyon/spring-note
项目源码包含了swagger,后续更新关于spring boot集成swagger基础实例
欢迎关注公众号:程序员布欧,不定期更新技术入门文章
创作不易,转载请注明出处和作者。
spring boot使用swagger生成api接口文档的更多相关文章
- Spring Boot2配置Swagger2生成API接口文档
一.Swagger2介绍 前后端分离开发模式中,api文档是最好的沟通方式. Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务. 及时性 (接 ...
- .netcore Swagger 生成 api接口文档
1, 引用第三方包, Swashbuckle.AspNetCore Swashbuckle.AspNetCore.Swagger Swashbuckle.AspNetCore.SwaggerUI 最简 ...
- .NET Core WEB API使用Swagger生成在线接口文档
1项目引用Swashbuckle.AspNetCore程序集和Microsoft.Extensions.PlatformAbstractions程序集 右击项目打开"管理NuGet程序包.. ...
- SpringBoot + Swagger2 自动生成API接口文档
spring-boot作为当前最为流行的Java web开发脚手架,相信越来越多的开发者会使用其来构建企业级的RESTFul API接口.这些接口不但会服务于传统的web端(b/s),也会服务于移动端 ...
- Spring MVC学习总结(9)——Spring MVC整合swagger自动生成api接口文档
Swagger 号称:世界最流行的API框架,官网:http://swagger.io/,Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总 ...
- 使用Swagger生成简单接口文档
使用swagger通过简单的配置可以生成简单的接口文档: 依赖包: // Swagger2 compile 'io.springfox:springfox-swagger2:2.8.0' compil ...
- SpringBoot18 Swagger、API接口文档生成、WireMock、模拟后台数据
1 Swagger 1.1 简述 前后端分离的项目需要前后端开发人员协同工作,后台开发人员需要给到前端开发者一套API文档:利用Swagger可以简单高效的帮助后台开发者生成RestfulAPI开发文 ...
- .NET Core使用swagger进行API接口文档管理
一.问题背景 随着技术的发展,现在的开发模式已经更多的转向了前后端分离的模式,在前后端开发的过程中,联系的方式也变成了API接口,但是目前项目中对于API的管理很多时候还是通过手工编写文档,每次的需求 ...
- swagger 生成的接口文档,隐藏接口的某个参数
[问题描述] controller 中的处理请求的方法,有时候会添加一些额外的参数.比如下面代码中 UserVo: @PostMapping(value = "/add-office-par ...
随机推荐
- Win10系统下搭建Go lang开发环境更换国内源并且体验宇宙最快框架Iris
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_156 最近有同学开始尝试接触Go lang,拥抱新技术永远都会是一个好习惯,之前的一篇文章介绍了如何在Mac os系统下配置Go ...
- luogu1486 [NOI2004]郁闷的出纳员 (平衡树)
加的注释,都流着泪... 胡了一种做法,样例都没过,翻题解发现一神仙Remove操作,妙啊! #include <iostream> #include <cstdio> #in ...
- Blazor预研与实战
背景 最近一直在搞一件事,就是熟悉Blazor,后期需要将Blazor真正运用到项目内.前期做了一些调研,包括但不限于 Blazor知识学习 组件库生态预研 与现有SPA框架做比对 与WebForm做 ...
- kafka手动设置offset
项目中经常有需求不是消费kafka队列全部的数据,取区间数据 查询kafka最大的offset: ./kafka-run-class.sh kafka.tools.GetOffsetShell --b ...
- [SDOI2012]走迷宫 (强连通分量缩点,动态规划,高斯消元)
题面 Morenan被困在了一个迷宫里.迷宫可以视为N个点M条边的有向图,其中Morenan处于起点S,迷宫的终点设为T.可惜的是,Morenan非常的脑小,他只会从一个点出发随机沿着一条从该点出发的 ...
- C#基础_XML文件读写
使用C#对XML文件进行操作,包括生成一个XML文档,以及读取XML文档中的内容,修改某个元素中的内容 using System; using System.Collections.Generic; ...
- 【HTML】学习路径4-align对齐-标签属性
每个标签都可以设置各种属性,比如可以给一个段落标签添加一个name的属性: <p name="段落标签1"> 这一节我们学习一个属性:align对齐标签 第一章:ali ...
- Python获取时光网电影数据
Python获取时光网电影数据 一.前言 有时候觉得电影真是人类有史以来最伟大的发明,我喜欢看电影,看电影可以让我们增长见闻,学习知识.从某种角度上而言,电影凭借自身独有的魅力大大延长了人类的&quo ...
- Docker 入门指南
Docker 入门指南 目录 基础概念 安装教程 基本操作 常用安装 构建操作 容器编排 壹.基础概念 什么是Docker? Docker是基于Go开发的应用容器引擎,属于 Linux 容器的一种封装 ...
- centos7部署Prometheus+Grafana
一.安装Prometheus Server 请从 Prometheus 官方下载 linux 版的二进制压缩包.注意在下载前要选择操作系统为 linux. 执行下面的命令把 prometheus se ...