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

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

具体可以查看本站spring boot系列文章:

spring boot项目使用mybatis-plus代码生成实例

具体例子

在使用之前,我们需要添加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>


swagger:
  basePackage: com.lewyon.mybatislewyon #&#x5305;&#x540D;
  title: &#x6807;&#x9898;  #&#x6807;&#x9898;
  description: lewyon #&#x63CF;&#x8FF0;
  version: V1.0  #&#x7248;&#x672C;&#x53F7;

以上配置包含了swagger文档展示的包名,标题以及描述,版本号等信息

在springApplication添加swagger注解之后,项目启动时,会注入swagger相关配置和代码,

项目启动成功之后

服务地址/swagger-ui.html就是当前swagger文档地址


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);
    }

}

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>
 * &#x524D;&#x7AEF;&#x63A7;&#x5236;&#x5668;
 * </p>
 *
 * @author lewyon
 * @since 2022-06-25
 */
@RestController
@RequestMapping("/user")
@Api(value = "&#x7528;&#x6237;", tags = {"&#x7528;&#x6237;&#x64CD;&#x4F5C;"})
public class UserController {
    @Autowired
    UserService userService;

    @GetMapping("/list")
    @ApiOperation("&#x7528;&#x6237;&#x5217;&#x8868;")
    public List<user> listUser() {
        return userService.list();
    }

    @GetMapping("/getUser/{userId}")
    @ApiOperation("&#x7528;&#x6237;&#x8BE6;&#x60C5;")
    public User getUserById(@PathVariable long userId) {
        return userService.getById(userId);
    }

    @GetMapping("/updateUser/{user}")
    @ApiOperation("&#x66F4;&#x65B0;&#x7528;&#x6237;")
    public boolean updateUserById(User user) {
        return userService.updateById(user);
    }

    @GetMapping("/addUser/{user}")
    @ApiOperation("&#x65B0;&#x589E;&#x7528;&#x6237;")
    public boolean addUser(User user) {
        return userService.save(user);
    }

    @GetMapping("/deleteUser/{id}")
    @ApiOperation("&#x5220;&#x9664;&#x7528;&#x6237;")
    public boolean delUserById(String id) {
        return userService.removeById(id);
    }

}

</user>

以上就是spring boot集成swagger生成接口文档的例子,关于swagger更多配置,可以查阅swagger官方文档

文章个人博客地址:

项目源码地址:

项目源码包含了swagger,后续更新关于spring boot集成swagger基础实例

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

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

Original: https://www.cnblogs.com/akari16/p/16790828.html
Author: 程序员布欧
Title: spring boot使用swagger生成api接口文档

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/800857/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球