23

Spring Boot 集成 JApiDocs生成接口文档

 3 years ago
source link: http://www.zhouzhaodong.xyz/archives/springboot集成japidocs生成接口文档
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

之前使用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 运行生成接口文档

控制台打印:

26RnMjz.png!mobile

生成的文档:

YbMJzaj.png!mobile

接口详细信息:

ABBnIra.png!mobileMreQfay.png!mobile

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


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK