HttpDoc 是一个基于Java标准doc注释构建的代码零侵入的HTTPRESTfulAPI在线阅览文档及测试界面框架。
JSON-Editor: httpdoc-ui TextArea: httpdoc-ui-v1
功能特性
基础功能无需为配合HttpDoc框架而多写一句代码,甚至连doc注释都不必写,即可拥有项目的API文档和测试界面。
遵循 RFC2616HTTP/1.1 规范,适配主流后台WEB框架。
拓展多个JavaDoc注释标签,满足不同的文档阅览及在线测试需求。
一键生成SDK,支持多个平台,让前后台以及跨平台对接变得更简单。
WEB服务器无关,同时支持SpringBoot命令方式启动。
支持MavenGradle或JAR包依赖。
环境依赖JDK1.7+
集成步骤Maven引入依赖
<project> <!-- 设置 jitpack.io 仓库 --> <repositories> <repository> <id>jitpack.io</id> <url>https://www.jitpack.io</url> </repository> </repositories> <dependencies> <!-- 添加 HttpDoc 依赖 --> <dependency> <groupId>com.github.core-lib.httpdoc</groupId> <artifactId>httpdoc-spring-mvc</artifactId> <version>v1.5.3</version> </dependency> <!-- 添加JDK的tools.jar依赖用于解析源码注释,采用这种方式部署到Tomcat时需要往Tomcat的lib目录增加该tools.jar --> <dependency> <groupId>com.sun</groupId> <artifactId>tools</artifactId> <version>1.8</version> <scope>system</scope> <systemPath>${env.JAVA_HOME}/lib/tools.jar</systemPath> </dependency> <!-- 当然还有很多种方式来依赖tools.jar,例如上传到自己的私服或从别的仓库中依赖进来 --> </dependencies></project>配置插件
<!-- 由于框架基于源码注释解析来实现,所以保留源码是基础,如果只想要在线测试而没有文档阅览的需求,可不必添加该插件。--><!-- 如果项目是多模块项目,需要被解析的源码类分散在多模块中,则其他模块也需要配置该插件,或在父项目的pom.xml中配置该插件。--><plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>3.1.0</version> <configuration> <encoding>UTF-8</encoding> </configuration> <executions> <execution> <id>copy-src</id> <phase>process-sources</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/classes</outputDirectory> <resources> <resource> <directory>${basedir}/src/main/java</directory> </resource> </resources> </configuration> </execution> </executions></plugin>配置参数
SpringMVC
<web-app> <servlet> <servlet-name>httpdoc</servlet-name> <servlet-class>io.httpdoc.web.HttpdocServletSupport</servlet-class> <init-param> <param-name>httpdoc</param-name> <param-value>项目名称</param-value> </init-param> <init-param> <param-name>version</param-name> <param-value>项目版本</param-value> </init-param> <init-param> <param-name>description</param-name> <param-value> <![CDATA[ 项目描述(可以内嵌HTML标签) ]]> </param-value> </init-param> <init-param> <param-name>dateFormat</param-name> <param-value>yyyy-MM-dd HH
评论