From ee064fa84c453602c99c092c9abfc700c2b29004 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期六, 15 五月 2021 14:25:48 +0800
Subject: [PATCH] update swagger升级3.0.2
---
/dev/null | 166 -----------------------------------------
ruoyi-demo/pom.xml | 5 -
ruoyi-admin/pom.xml | 5 -
ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java | 23 ++---
pom.xml | 15 +++
ruoyi-common/pom.xml | 10 ++
6 files changed, 33 insertions(+), 191 deletions(-)
diff --git a/pom.xml b/pom.xml
index 03e1b0a..edd8621 100644
--- a/pom.xml
+++ b/pom.xml
@@ -20,7 +20,8 @@
<java.version>1.8</java.version>
<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
<druid.version>1.2.4</druid.version>
- <knife4j.version>2.0.8</knife4j.version>
+ <knife4j.version>3.0.2</knife4j.version>
+ <swagger-annotations.version>1.5.22</swagger-annotations.version>
<fastjson.version>1.2.75</fastjson.version>
<poi.version>4.1.2</poi.version>
<velocity.version>1.7</velocity.version>
@@ -56,6 +57,18 @@
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>${knife4j.version}</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>swagger-annotations</artifactId>
+ <groupId>io.swagger</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>io.swagger</groupId>
+ <artifactId>swagger-annotations</artifactId>
+ <version>${swagger-annotations.version}</version>
</dependency>
<!-- excel宸ュ叿 -->
diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml
index 23fd60c..e51c7da 100644
--- a/ruoyi-admin/pom.xml
+++ b/ruoyi-admin/pom.xml
@@ -24,11 +24,6 @@
<optional>true</optional> <!-- 琛ㄧず渚濊禆涓嶄細浼犻�� -->
</dependency>
- <dependency>
- <groupId>com.github.xiaoymin</groupId>
- <artifactId>knife4j-spring-boot-starter</artifactId>
- </dependency>
-
<!-- Mysql椹卞姩鍖� -->
<dependency>
<groupId>mysql</groupId>
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/TestController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/TestController.java
deleted file mode 100644
index 3c5bf7c..0000000
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/TestController.java
+++ /dev/null
@@ -1,166 +0,0 @@
-package com.ruoyi.web.controller.tool;
-
-import cn.hutool.core.lang.Validator;
-import com.ruoyi.common.core.controller.BaseController;
-import com.ruoyi.common.core.domain.AjaxResult;
-import io.swagger.annotations.*;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.ArrayList;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-
-/**
- * swagger 鐢ㄦ埛娴嬭瘯鏂规硶
- *
- * @author ruoyi
- */
-@Api("鐢ㄦ埛淇℃伅绠$悊")
-@RestController
-@RequestMapping("/test/user")
-public class TestController extends BaseController
-{
- private final static Map<Integer, UserEntity> users = new LinkedHashMap<Integer, UserEntity>();
- {
- users.put(1, new UserEntity(1, "admin", "admin123", "15888888888"));
- users.put(2, new UserEntity(2, "ry", "admin123", "15666666666"));
- }
-
- @ApiOperation("鑾峰彇鐢ㄦ埛鍒楄〃")
- @GetMapping("/list")
- public AjaxResult userList()
- {
- List<UserEntity> userList = new ArrayList<UserEntity>(users.values());
- return AjaxResult.success(userList);
- }
-
- @ApiOperation("鑾峰彇鐢ㄦ埛璇︾粏")
- @ApiImplicitParam(name = "userId", value = "鐢ㄦ埛ID", required = true, dataType = "int", paramType = "path")
- @GetMapping("/{userId}")
- public AjaxResult getUser(@PathVariable Integer userId)
- {
- if (!users.isEmpty() && users.containsKey(userId))
- {
- return AjaxResult.success(users.get(userId));
- }
- else
- {
- return AjaxResult.error("鐢ㄦ埛涓嶅瓨鍦�");
- }
- }
-
- @ApiOperation("鏂板鐢ㄦ埛")
- @ApiImplicitParam(name = "userEntity", value = "鏂板鐢ㄦ埛淇℃伅", dataType = "UserEntity")
- @PostMapping("/save")
- public AjaxResult save(UserEntity user)
- {
- if (Validator.isNull(user) || Validator.isNull(user.getUserId()))
- {
- return AjaxResult.error("鐢ㄦ埛ID涓嶈兘涓虹┖");
- }
- return AjaxResult.success(users.put(user.getUserId(), user));
- }
-
- @ApiOperation("鏇存柊鐢ㄦ埛")
- @ApiImplicitParam(name = "userEntity", value = "鏂板鐢ㄦ埛淇℃伅", dataType = "UserEntity")
- @PutMapping("/update")
- public AjaxResult update(UserEntity user)
- {
- if (Validator.isNull(user) || Validator.isNull(user.getUserId()))
- {
- return AjaxResult.error("鐢ㄦ埛ID涓嶈兘涓虹┖");
- }
- if (users.isEmpty() || !users.containsKey(user.getUserId()))
- {
- return AjaxResult.error("鐢ㄦ埛涓嶅瓨鍦�");
- }
- users.remove(user.getUserId());
- return AjaxResult.success(users.put(user.getUserId(), user));
- }
-
- @ApiOperation("鍒犻櫎鐢ㄦ埛淇℃伅")
- @ApiImplicitParam(name = "userId", value = "鐢ㄦ埛ID", required = true, dataType = "int", paramType = "path")
- @DeleteMapping("/{userId}")
- public AjaxResult delete(@PathVariable Integer userId)
- {
- if (!users.isEmpty() && users.containsKey(userId))
- {
- users.remove(userId);
- return AjaxResult.success();
- }
- else
- {
- return AjaxResult.error("鐢ㄦ埛涓嶅瓨鍦�");
- }
- }
-}
-
-@ApiModel("鐢ㄦ埛瀹炰綋")
-class UserEntity
-{
- @ApiModelProperty("鐢ㄦ埛ID")
- private Integer userId;
-
- @ApiModelProperty("鐢ㄦ埛鍚嶇О")
- private String username;
-
- @ApiModelProperty("鐢ㄦ埛瀵嗙爜")
- private String password;
-
- @ApiModelProperty("鐢ㄦ埛鎵嬫満")
- private String mobile;
-
- public UserEntity()
- {
-
- }
-
- public UserEntity(Integer userId, String username, String password, String mobile)
- {
- this.userId = userId;
- this.username = username;
- this.password = password;
- this.mobile = mobile;
- }
-
- public Integer getUserId()
- {
- return userId;
- }
-
- public void setUserId(Integer userId)
- {
- this.userId = userId;
- }
-
- public String getUsername()
- {
- return username;
- }
-
- public void setUsername(String username)
- {
- this.username = username;
- }
-
- public String getPassword()
- {
- return password;
- }
-
- public void setPassword(String password)
- {
- this.password = password;
- }
-
- public String getMobile()
- {
- return mobile;
- }
-
- public void setMobile(String mobile)
- {
- this.mobile = mobile;
- }
-}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java b/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java
index 8a1b74b..39c7786 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java
@@ -5,6 +5,8 @@
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
@@ -14,7 +16,7 @@
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spi.service.contexts.SecurityContext;
import springfox.documentation.spring.web.plugins.Docket;
-import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
import java.util.ArrayList;
import java.util.List;
@@ -25,20 +27,16 @@
* @author Lion Li
*/
@Configuration
-@EnableSwagger2WebMvc
+@EnableSwagger2
@EnableKnife4j
+@ConditionalOnClass({Docket.class, ApiInfoBuilder.class})
+@ConditionalOnProperty(prefix = "swagger", value = "enable", matchIfMissing = true)
public class SwaggerConfig {
/**
* 绯荤粺鍩虹閰嶇疆
*/
@Autowired
private RuoYiConfig ruoyiConfig;
-
- /**
- * 鏄惁寮�鍚痵wagger
- */
- @Value("${swagger.enabled}")
- private boolean enabled;
/**
* 璁剧疆璇锋眰鐨勭粺涓�鍓嶇紑
@@ -70,8 +68,6 @@
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
- // 鏄惁鍚敤Swagger
- .enable(enabled)
// 鐢ㄦ潵鍒涘缓璇PI鐨勫熀鏈俊鎭紝灞曠ず鍦ㄦ枃妗g殑椤甸潰涓紙鑷畾涔夊睍绀虹殑淇℃伅锛�
.apiInfo(apiInfo())
// 璁剧疆鍝簺鎺ュ彛鏆撮湶缁橲wagger灞曠ず
@@ -85,15 +81,14 @@
.build()
/* 璁剧疆瀹夊叏妯″紡锛宻wagger鍙互璁剧疆璁块棶token */
.securitySchemes(securitySchemes())
- .securityContexts(securityContexts())
- .pathMapping(pathMapping);
+ .securityContexts(securityContexts());
}
/**
* 瀹夊叏妯″紡锛岃繖閲屾寚瀹歵oken閫氳繃Authorization澶磋姹傚ご浼犻��
*/
- private List<ApiKey> securitySchemes() {
- List<ApiKey> apiKeyList = new ArrayList<ApiKey>();
+ private List<SecurityScheme> securitySchemes() {
+ List<SecurityScheme> apiKeyList = new ArrayList<SecurityScheme>();
apiKeyList.add(new ApiKey("Authorization", "Authorization", "header"));
return apiKeyList;
}
diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml
index a18e801..9ba4b2a 100644
--- a/ruoyi-common/pom.xml
+++ b/ruoyi-common/pom.xml
@@ -131,6 +131,16 @@
<artifactId>spring-boot-admin-starter-client</artifactId>
</dependency>
+ <dependency>
+ <groupId>com.github.xiaoymin</groupId>
+ <artifactId>knife4j-spring-boot-starter</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>io.swagger</groupId>
+ <artifactId>swagger-annotations</artifactId>
+ </dependency>
+
</dependencies>
</project>
\ No newline at end of file
diff --git a/ruoyi-demo/pom.xml b/ruoyi-demo/pom.xml
index 9789455..4904924 100644
--- a/ruoyi-demo/pom.xml
+++ b/ruoyi-demo/pom.xml
@@ -23,11 +23,6 @@
<artifactId>ruoyi-common</artifactId>
</dependency>
- <dependency>
- <groupId>com.github.xiaoymin</groupId>
- <artifactId>knife4j-spring-boot-starter</artifactId>
- </dependency>
-
</dependencies>
</project>
\ No newline at end of file
--
Gitblit v1.9.3