From 17a49ddae2b1ca0b8a3533d04b1bd1ba89db4cde Mon Sep 17 00:00:00 2001 From: YunaiV <> Date: Sat, 21 Nov 2020 16:37:47 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8=20JApiDocs=20=E7=94=9F?= =?UTF-8?q?=E6=88=90=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lab-24/lab-24-apidoc-japidocs/pom.xml | 31 +++++++++++ .../iocoder/springboot/lab24/Application.java | 13 +++++ .../springboot/lab24/TestJApiDocs.java | 22 ++++++++ .../lab24/controller/UserController.java | 52 +++++++++++++++++++ .../springboot/lab24/vo/UserCreateReqVO.java | 17 ++++++ .../springboot/lab24/vo/UserListReqVO.java | 13 +++++ .../springboot/lab24/vo/UserRespVO.java | 21 ++++++++ lab-24/pom.xml | 1 + pom.xml | 2 +- 9 files changed, 171 insertions(+), 1 deletion(-) create mode 100644 lab-24/lab-24-apidoc-japidocs/pom.xml create mode 100644 lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/Application.java create mode 100644 lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/TestJApiDocs.java create mode 100644 lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/controller/UserController.java create mode 100644 lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserCreateReqVO.java create mode 100644 lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserListReqVO.java create mode 100644 lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserRespVO.java diff --git a/lab-24/lab-24-apidoc-japidocs/pom.xml b/lab-24/lab-24-apidoc-japidocs/pom.xml new file mode 100644 index 00000000..f1a946f4 --- /dev/null +++ b/lab-24/lab-24-apidoc-japidocs/pom.xml @@ -0,0 +1,31 @@ + + + + org.springframework.boot + spring-boot-starter-parent + 2.1.3.RELEASE + + + 4.0.0 + + lab-24-apidoc-japidocs + + + + + org.springframework.boot + spring-boot-starter-web + + + + + io.github.yedaxia + japidocs + 1.4.4 + + + + + diff --git a/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/Application.java b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/Application.java new file mode 100644 index 00000000..cc795da4 --- /dev/null +++ b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/Application.java @@ -0,0 +1,13 @@ +package cn.iocoder.springboot.lab24; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class Application { + + public static void main(String[] args) { + SpringApplication.run(Application.class, args); + } + +} diff --git a/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/TestJApiDocs.java b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/TestJApiDocs.java new file mode 100644 index 00000000..fdeab6e5 --- /dev/null +++ b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/TestJApiDocs.java @@ -0,0 +1,22 @@ +package cn.iocoder.springboot.lab24; + +import io.github.yedaxia.apidocs.Docs; +import io.github.yedaxia.apidocs.DocsConfig; +import io.github.yedaxia.apidocs.plugin.markdown.MarkdownDocPlugin; + +public class TestJApiDocs { + + public static void main(String[] args) { + // 1. 创建生成文档的配置 + DocsConfig config = new DocsConfig(); + config.setProjectPath("/Users/yunai/Java/SpringBoot-Labs/lab-24/lab-24-apidoc-japidocs"); // 项目所在目录 + config.setDocsPath("/Users/yunai/Downloads/"); // 生成 HTML 接口文档的目标目录 + config.setAutoGenerate(true); // 是否给所有 Controller 生成接口文档 + config.setProjectName("示例项目"); // 项目名 + config.setApiVersion("V1.0"); // API 版本号 + config.addPlugin(new MarkdownDocPlugin()); // 使用 MD 插件,额外生成 MD 格式的接口文档 + // 2. 执行生成 HTML 接口文档 + Docs.buildHtmlDocs(config); + } + +} diff --git a/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/controller/UserController.java b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/controller/UserController.java new file mode 100644 index 00000000..da67b980 --- /dev/null +++ b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/controller/UserController.java @@ -0,0 +1,52 @@ +package cn.iocoder.springboot.lab24.controller; + +import cn.iocoder.springboot.lab24.vo.UserCreateReqVO; +import cn.iocoder.springboot.lab24.vo.UserListReqVO; +import cn.iocoder.springboot.lab24.vo.UserRespVO; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 用户 API + */ +@RestController +@RequestMapping("/api/user/") +public class UserController { + + + /** + * 获得用户列表 + * + * @param listReqVO 列表筛选条件 + * @return 用户列表 + */ + @GetMapping("list") + public List list(UserListReqVO listReqVO){ + return null; + } + + /** + * 保存用户 + * + * @param createReqVO 创建用户信息 + * @return 用户编号 + */ + @PostMapping("save") + public Integer saveUser(@RequestBody UserCreateReqVO createReqVO){ + return 1; + } + + /** + * 删除指定编号的用户 + * + * @param id 用户编号 + * @return 是否成功 + */ + @DeleteMapping("delete") + public Boolean deleteUser(@RequestParam Long id){ + return true; + } + + +} diff --git a/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserCreateReqVO.java b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserCreateReqVO.java new file mode 100644 index 00000000..c5e82c8f --- /dev/null +++ b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserCreateReqVO.java @@ -0,0 +1,17 @@ +package cn.iocoder.springboot.lab24.vo; + +/** + * 用户创建请求 VO + */ +public class UserCreateReqVO { + + /** + * 昵称 + */ + private String nickname; + /** + * 年龄 + */ + private Integer age; + +} diff --git a/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserListReqVO.java b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserListReqVO.java new file mode 100644 index 00000000..cb0f2862 --- /dev/null +++ b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserListReqVO.java @@ -0,0 +1,13 @@ +package cn.iocoder.springboot.lab24.vo; + +/** + * 用户列表请求 VO + */ +public class UserListReqVO { + + /** + * 昵称,模糊匹配 + */ + private String nickname; + +} diff --git a/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserRespVO.java b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserRespVO.java new file mode 100644 index 00000000..2dda156c --- /dev/null +++ b/lab-24/lab-24-apidoc-japidocs/src/main/java/cn/iocoder/springboot/lab24/vo/UserRespVO.java @@ -0,0 +1,21 @@ +package cn.iocoder.springboot.lab24.vo; + +/** + * 用户响应 VO + */ +public class UserRespVO { + + /** + * 用户编号 + */ + private Integer id; + /** + * 昵称 + */ + private String nickname; + /** + * 年龄 + */ + private Integer age; + +} diff --git a/lab-24/pom.xml b/lab-24/pom.xml index e312a126..1c5c69a0 100644 --- a/lab-24/pom.xml +++ b/lab-24/pom.xml @@ -14,6 +14,7 @@ lab-24-apidoc-swagger lab-24-apidoc-swagger-knife4j + lab-24-apidoc-japidocs diff --git a/pom.xml b/pom.xml index 941039a9..e37f7897 100644 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ - + lab-24