SpringBoot使用swagger生成api接口文档的方法详解
作者:程序员布欧 时间:2021-10-22 18:11:48
前言
在之前的文章中,使用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);
}
}
来源:https://www.cnblogs.com/akari16/p/16790828.html
标签:SpringBoot,swagger,接口文档
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Flutter 实现下拉刷新上拉加载的示例代码
2023-08-18 21:31:16
![](https://img.aspxhome.com/file/2023/8/88668_0s.gif)
java基于UDP实现在线聊天功能
2021-06-08 00:01:44
![](https://img.aspxhome.com/file/2023/3/89603_0s.jpg)
实例讲解Java 自旋锁
2021-09-17 09:38:50
![](https://img.aspxhome.com/file/2023/4/70914_0s.png)
关于C#连接SQL Server时提示用户登录失败的解决方法
2021-10-03 21:21:58
![](https://img.aspxhome.com/file/2023/1/79071_0s.png)
详解如何让Spring MVC显示自定义的404 Not Found页面
2023-12-12 15:48:47
![](https://img.aspxhome.com/file/2023/1/72571_0s.jpg)
C#实现剪切板功能
2023-01-16 12:26:48
Javacsv实现Java读写csv文件
2022-02-16 01:10:15
spring boot 使用profile来分区配置的操作
2022-11-27 22:55:15
![](https://img.aspxhome.com/file/2023/5/64205_0s.png)
SpringBoot框架集成ElasticSearch实现过程示例详解
2023-02-02 08:44:05
![](https://img.aspxhome.com/file/2023/7/70487_0s.png)
Java设计模式之访问者模式
2023-04-17 20:00:15
![](https://img.aspxhome.com/file/2023/5/60135_0s.png)
C#调用新浪微博API实例代码
2022-12-21 14:02:15
![](https://img.aspxhome.com/file/2023/2/82192_0s.jpg)
基于Java解决华为机试之字符串加解密
2022-10-12 17:32:39
Java杂谈之类和对象 封装 构造方法以及代码块详解
2022-03-13 12:38:26
![](https://img.aspxhome.com/file/2023/6/88186_0s.png)
Netty如何设置为Https访问
2021-12-06 02:00:40
C++右值引用与move和forward函数的使用详解
2023-07-05 19:27:33
C#可用于登录验证码的四位随机数生成方法
2021-08-01 00:31:01
javax.persistence中@Column定义字段类型方式
2021-12-03 21:21:44
Java中tomcat memecached session 共享同步问题的解决办法
2021-12-26 14:22:54
![](https://img.aspxhome.com/file/2023/9/78019_0s.png)
基于Idea+Jconsole实现线程监控步骤
2021-07-29 10:39:40
![](https://img.aspxhome.com/file/2023/4/61824_0s.png)
Android 中TextView中跑马灯效果的实现方法
2023-08-07 01:39:46