SpringBoot swagger生成api接口文档
程序员布欧 人气:0前言
在之前的文章中,使用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); } }
加载全部内容