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