关于springboot:个人学习系列-Spring-Boot-集成-JApiDocs生成接口文档

30次阅读

共计 1511 个字符,预计需要花费 4 分钟才能阅读完成。

之前应用 Swagger 来生成在线的接口文档,可是须要在代码中写入过多的注解,是在是麻烦。于是乎就找到 JApiDocs 来生成文档试试。。。

1. 新建 Spring Boot 我的项目

1.1 pom.xml

<dependency>
    <groupId>io.github.yedaxia</groupId>
    <artifactId>japidocs</artifactId>
    <version>1.4.3</version>
</dependency>

1.2 新建 SysUser 实体类

/**
 * 实体类
 * @author zhouzhaodong
 */
@Data
public class SysUser {

    /**
     * id
     */
    private Integer id;

    /**
     * 姓名
     */
    private String name;

    /**
     * 明码
     */
    private String password;

    /**
     * 地址
     */
    private String address;

    /**
     * 测试字段
     * @Ignore 该注解在生成文档的时候会被疏忽掉
     */
    @Ignore
    private String balabala;

}

1.3 这里我就不写 service 实现,间接写 controller

/**
 * 用户治理
 * @author zhouzhaodong
 */
@RestController
public class SysUserController {

    /**
     * 依据用户 id 获取用户信息
     * @param id
     * @return
     */
    @RequestMapping("/getSysUser")
    public SysUser getSysUser(Integer id){SysUser sysUser = new SysUser();
        sysUser.setId(id);
        sysUser.setName("address");
        sysUser.setPassword("12345");
        sysUser.setAddress("青岛");
        return sysUser;
    }

    /**
     * 测试接口
     * @Ignore 该注解在生成文档的时候会被疏忽掉
     * @param id
     * @return
     */
    @Ignore
    @RequestMapping("/getOne")
    public SysUser getOne(Integer id){return null;}

}

1.4 JApiDocsConfig 文档生成

/**
 * 文档生成
 * @author zhouzhaodong
 */
public class JapidocsConfig {public static void main(String[] args) {DocsConfig config = new DocsConfig();
        // 我的项目根目录
        config.setProjectPath("D:\\work\\workSpace\\springboot\\spring-boot-japidocs");
        // 项目名称
        config.setProjectName("springbootjapidocs");
        // 申明该 API 的版本
        config.setApiVersion("V1.0");
        // 生成 API 文档所在目录
        config.setDocsPath("D:\\");
        // 配置主动生成
        config.setAutoGenerate(Boolean.TRUE);
        // 执行生成文档
        Docs.buildHtmlDocs(config);
    }

}

1.5 运行生成接口文档

控制台打印:

生成的文档:

接口详细信息:

发现的确比 Swagger 轻量的多,就是不能在线调试。

集体博客地址:

http://www.zhouzhaodong.xyz/

GitHub 代码地址:

https://github.com/zhouzhaodo…

正文完
 0