乐趣区

关于后端:spring-boot使用swagger生成api接口文档

前言

在之前的文章中,应用 mybatis-plus 生成了对应的包,在此基础上,咱们针对我的项目的 api 接口,增加 swagger 配置和注解,生成 swagger 接口文档

具体能够查看本站 spring boot 系列文章:

spring boot 我的项目应用 mybatis-plus 代码生成实例

具体例子

maven 配置

<!– more –>

在应用之前,咱们须要增加 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 官网文档

swagger 官网文档

文章集体博客地址:

spring boot 应用 swagger 生成 api 接口文档

我的项目源码地址:

https://gitee.com/lewyon/spring-note

我的项目源码蕴含了 swagger,后续更新对于 spring boot 集成 swagger 根底实例

欢送关注公众号: 程序员布欧 ,不定期更新技术入门文章

创作不易,转载请注明出处和作者。

退出移动版