JApiDocs官网地址
我个人不是很喜欢swagger,注解入侵。纯spring boot 项目一大,打开页面就会很卡。影响性能这方面,虽然可以部署项目的时候去掉@EnableSwagger2注解,但是相应的注解也成了垃圾注入。所以最好用java源生的注解。这也是我喜欢JApiDocs的理由。我不需要JApiDocs的时候,直接把依赖去掉,再把main方法删掉。简单粗暴,不会对代码造成任何影响。
io.github.yedaxia japidocs 1.4.4
找任意一个没有main方法的地方写个main方法。
public static void main(String[] args) {
DocsConfig config = new DocsConfig();
String projectName = "config-client";
config.setProjectPath(System.getProperty("user.dir")+"/"+projectName+"/src/main"); // 项目根目录(官方文档没写具体位置,我自己试了一下,然后我建议是该项目到src/main目录)
config.setProjectName(projectName); // 项目名称
config.setApiVersion("1.0.0"); // 声明该API的版本
config.setDocsPath("d:/"); // 生成API 文档所在目录
config.setAutoGenerate(Boolean.TRUE); // 配置自动生成
Docs.buildHtmlDocs(config); // 执行生成文档
}
这是我那个测试的Controller层
import io.github.yedaxia.apidocs.Docs;
import io.github.yedaxia.apidocs.DocsConfig;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@Value("${nickName}")
private String nickName;
@GetMapping("a")
public String a(){
return nickName;
}
public static void main(String[] args) {
DocsConfig config = new DocsConfig();
String projectName = "config-client";
config.setProjectPath(System.getProperty("user.dir")+"/"+projectName+"/src/main"); // 项目根目录
config.setProjectName(projectName); // 项目名称
config.setApiVersion("1.0.0"); // 声明该API的版本
config.setDocsPath("d:/"); // 生成API 文档所在目录
config.setAutoGenerate(Boolean.TRUE); // 配置自动生成
Docs.buildHtmlDocs(config); // 执行生成文档
}
}
运行main方法,在D盘或者你设置的盘符,找到1.0.0文件夹,或者你设置的文件夹。
这个html就是离线接口文档了。



