diff --git a/README.md b/README.md
index 96637b2..d4e1182 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,27 @@
# spring-boot-openapi
-springboot下的openapi功能测试,包含有Swagger和springdoc
\ No newline at end of file
+> SpringBoot下的OpenApi功能测试,包含有Swagger和SpringDoc,对于SpringBoot下Swagger相关功能配置和授权相关,授权如 apikey,basic,oauth2,jwt等
+
+
+项目环境
+- jdk1.8
+- Maven 3.8.1
+- spring-boot 2.7.16
+- springdoc-openapi-ui 1.7.0
+- springfox-boot-starter 3.0.0
+
+## 1. 项目结构
+
+```cmd
+├─spring-boot-model # 项目测试实体
+├─spring-boot-springdoc # SpringBoot集成SpringDoc
+└─spring-boot-swagger # SpringBoot集成SpringFox(这里使用的是最后的版本Swagger3.0,其中SwaggerConfig配置的是SWAGGER_2,SwaggerOpenApiConfig.java配置的是OAS_30)
+```
+## 2. 具体演示
+
+- SpringFox Swagger
+ 
+- Spring Doc
+ 
+- oauth2
+ 
diff --git a/img.png b/img.png
new file mode 100644
index 0000000..4b6e530
Binary files /dev/null and b/img.png differ
diff --git a/img/Swagger.png b/img/Swagger.png
new file mode 100644
index 0000000..e6fc932
Binary files /dev/null and b/img/Swagger.png differ
diff --git a/img/img.png b/img/img.png
new file mode 100644
index 0000000..4b6e530
Binary files /dev/null and b/img/img.png differ
diff --git a/img/oauth2.png b/img/oauth2.png
new file mode 100644
index 0000000..2a1fc5c
Binary files /dev/null and b/img/oauth2.png differ
diff --git a/pom.xml b/pom.xml
index 0762942..7e8d814 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,6 +25,7 @@
2.0.32
3.0.0
+ 1.7.0
1.8
@@ -42,6 +43,12 @@
${fastjson.version}
+
+ org.springdoc
+ springdoc-openapi-ui
+ ${springdoc.version}
+
+
io.springfox
springfox-boot-starter
diff --git a/spring-boot-springdoc/pom.xml b/spring-boot-springdoc/pom.xml
index 818b081..3a1999c 100644
--- a/spring-boot-springdoc/pom.xml
+++ b/spring-boot-springdoc/pom.xml
@@ -28,7 +28,6 @@
org.springdoc
springdoc-openapi-ui
- 1.7.0
diff --git a/spring-boot-swagger/src/main/java/com/jnssd/config/SwaggerOpenApiConfig.java b/spring-boot-swagger/src/main/java/com/jnssd/config/SwaggerOpenApiConfig.java
index d52a9fd..77e3ce2 100644
--- a/spring-boot-swagger/src/main/java/com/jnssd/config/SwaggerOpenApiConfig.java
+++ b/spring-boot-swagger/src/main/java/com/jnssd/config/SwaggerOpenApiConfig.java
@@ -1,5 +1,6 @@
package com.jnssd.config;
+import io.swagger.annotations.ApiOperation;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.util.AntPathMatcher;
@@ -39,9 +40,10 @@ public class SwaggerOpenApiConfig {
.select()
// 扫描特定包
// 扫描所有有注解的api,用这种方式更灵活
- // .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
+ .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
//.apis(RequestHandlerSelectors.any())
- .apis(RequestHandlerSelectors.basePackage("com.jnssd"))
+ // 扫描指定包下的
+ // .apis(RequestHandlerSelectors.basePackage("com.jnssd"))
.paths(PathSelectors.any())
.build()
.securitySchemes(initSecuritySchemeList())
@@ -51,7 +53,7 @@ public class SwaggerOpenApiConfig {
public ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Swagger项目测试")
- .description("novel项目接口文档")
+ .description("Swagger项目接口文档")
.build();
}
@@ -59,14 +61,14 @@ public class SwaggerOpenApiConfig {
List list = new ArrayList<>();
list.add(httpAuthenticationScheme());
- // list.add(securitySchemeApiKey());
- // list.add(securitySchemeOpenIdConnect());
- //
- // // 配置oauth2的几种模式
- // list.add(securitySchemeOauth2ClientCredentials());
- // list.add(securitySchemeOauth2implicit());
- // list.add(securitySchemeOauth2Password());
- // list.add(securitySchemeOauth2AuthorizationCode());
+ list.add(securitySchemeApiKey());
+ list.add(securitySchemeOpenIdConnect());
+
+ // 配置oauth2的几种模式
+ list.add(securitySchemeOauth2ClientCredentials());
+ list.add(securitySchemeOauth2implicit());
+ list.add(securitySchemeOauth2Password());
+ list.add(securitySchemeOauth2AuthorizationCode());
return list;
}
diff --git a/spring-boot-swagger/src/main/java/com/jnssd/controller/MenuController.java b/spring-boot-swagger/src/main/java/com/jnssd/controller/MenuController.java
index b53c988..0ae36e7 100644
--- a/spring-boot-swagger/src/main/java/com/jnssd/controller/MenuController.java
+++ b/spring-boot-swagger/src/main/java/com/jnssd/controller/MenuController.java
@@ -1,13 +1,11 @@
package com.jnssd.controller;
import com.jnssd.model.Menu;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
-import java.util.Comparator;
import java.util.List;
import java.util.Objects;
@@ -20,6 +18,7 @@ import java.util.Objects;
*/
@RestController
@RequestMapping("/menu")
+@Api(tags = "菜单")
public class MenuController {
final static String SUCCESS_TEXT = "操作成功!";
@@ -28,12 +27,14 @@ public class MenuController {
List