From 4376a53d8e27d0a70038be2ecfa063f08b8b44d8 Mon Sep 17 00:00:00 2001
From: WenG <450292408@qq.com>
Date: Mon, 19 Apr 2021 23:37:33 +0800
Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E7=BD=91=E5=85=B3=E9=80=BB?=
=?UTF-8?q?=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 7 +-
.../ink/wgink/gateway/config/BeanConfig.java | 4 -
.../controller/api/route/RouteController.java | 47 ---------
.../java/ink/wgink/gateway/dao/IBaseDao.java | 65 -------------
.../wgink/gateway/dao/route/IRouteDao.java | 14 ++-
.../gateway/dao/route/impl/RouteDaoImpl.java | 94 ------------------
.../filter/global/CountGlobalFilter.java | 3 -
.../BaseDao.java => handler/BaseHandler.java} | 21 ++--
.../gateway/handler/route/RouteHandler.java | 97 +++++++++++++++++++
.../java/ink/wgink/gateway/pojo/BasePOJO.java | 4 +-
.../wgink/gateway/pojo/pos/route/RoutePO.java | 36 -------
.../route/RouteDTO.java => route/Route.java} | 4 +-
.../wgink/gateway/pojo/vos/route/RouteVO.java | 25 -----
.../ink/wgink/gateway/router/AllRoutes.java | 40 ++++++++
.../wgink/gateway/service/BaseService.java | 14 ---
.../gateway/service/route/IRouteService.java | 38 --------
.../service/route/impl/RouteServiceImpl.java | 44 ---------
.../ink/wgink/gateway/util/ReflectUtil.java | 3 -
18 files changed, 162 insertions(+), 398 deletions(-)
delete mode 100644 src/main/java/ink/wgink/gateway/controller/api/route/RouteController.java
delete mode 100644 src/main/java/ink/wgink/gateway/dao/IBaseDao.java
delete mode 100644 src/main/java/ink/wgink/gateway/dao/route/impl/RouteDaoImpl.java
rename src/main/java/ink/wgink/gateway/{dao/BaseDao.java => handler/BaseHandler.java} (72%)
create mode 100644 src/main/java/ink/wgink/gateway/handler/route/RouteHandler.java
delete mode 100644 src/main/java/ink/wgink/gateway/pojo/pos/route/RoutePO.java
rename src/main/java/ink/wgink/gateway/pojo/{dtos/route/RouteDTO.java => route/Route.java} (86%)
delete mode 100644 src/main/java/ink/wgink/gateway/pojo/vos/route/RouteVO.java
create mode 100644 src/main/java/ink/wgink/gateway/router/AllRoutes.java
delete mode 100644 src/main/java/ink/wgink/gateway/service/BaseService.java
delete mode 100644 src/main/java/ink/wgink/gateway/service/route/IRouteService.java
delete mode 100644 src/main/java/ink/wgink/gateway/service/route/impl/RouteServiceImpl.java
diff --git a/pom.xml b/pom.xml
index c075360..83a1612 100644
--- a/pom.xml
+++ b/pom.xml
@@ -33,7 +33,7 @@
org.springframework.boot
- spring-boot-starter-data-mongodb
+ spring-boot-starter-data-mongodb-reactive
org.springframework.boot
@@ -44,11 +44,6 @@
org.apache.commons
commons-lang3
-
- com.alibaba
- fastjson
- ${fastjson.version}
-
joda-time
joda-time
diff --git a/src/main/java/ink/wgink/gateway/config/BeanConfig.java b/src/main/java/ink/wgink/gateway/config/BeanConfig.java
index 8ad1011..4ce162c 100644
--- a/src/main/java/ink/wgink/gateway/config/BeanConfig.java
+++ b/src/main/java/ink/wgink/gateway/config/BeanConfig.java
@@ -2,8 +2,6 @@ package ink.wgink.gateway.config;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
/**
* When you feel like quitting. Think about why you started
@@ -15,7 +13,6 @@ import org.springframework.context.annotation.Configuration;
* @Date: 2021/2/5 6:44 下午
* @Version: 1.0
*/
-@Configuration
public class BeanConfig {
/**
@@ -23,7 +20,6 @@ public class BeanConfig {
*
* @return
*/
- @Bean
public ObjectMapper objectMapper() {
return new ObjectMapper().disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);
}
diff --git a/src/main/java/ink/wgink/gateway/controller/api/route/RouteController.java b/src/main/java/ink/wgink/gateway/controller/api/route/RouteController.java
deleted file mode 100644
index 2f4be1e..0000000
--- a/src/main/java/ink/wgink/gateway/controller/api/route/RouteController.java
+++ /dev/null
@@ -1,47 +0,0 @@
-package ink.wgink.gateway.controller.api.route;
-
-import ink.wgink.gateway.dao.route.IRouteDao;
-import ink.wgink.gateway.pojo.ListPage;
-import ink.wgink.gateway.pojo.dtos.route.RouteDTO;
-import ink.wgink.gateway.pojo.result.SuccessResult;
-import ink.wgink.gateway.pojo.result.SuccessResultList;
-import ink.wgink.gateway.pojo.vos.route.RouteVO;
-import ink.wgink.gateway.service.route.IRouteService;
-import ink.wgink.gateway.util.ReflectUtil;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RestController;
-
-import java.util.List;
-
-/**
- * When you feel like quitting. Think about why you started
- * 当你想要放弃的时候,想想当初你为何开始
- *
- * @ClassName: RouteController
- * @Description: 路由
- * @Author: wanggeng
- * @Date: 2021/4/13 6:41 下午
- * @Version: 1.0
- */
-@RestController("sys/route")
-public class RouteController {
-
- @Autowired
- private IRouteService routeService;
-
- @PostMapping("save")
- public SuccessResult save(@RequestBody RouteVO routeVO) throws ReflectUtil.ReflectException {
- routeService.save(routeVO);
- return new SuccessResult();
- }
-
- @GetMapping("list")
- public SuccessResultList> listPage(ListPage page) {
- return routeService.listPage(page);
- }
-
-}
diff --git a/src/main/java/ink/wgink/gateway/dao/IBaseDao.java b/src/main/java/ink/wgink/gateway/dao/IBaseDao.java
deleted file mode 100644
index 0efef2b..0000000
--- a/src/main/java/ink/wgink/gateway/dao/IBaseDao.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package ink.wgink.gateway.dao;
-
-import ink.wgink.gateway.pojo.BasePOJO;
-
-import java.util.List;
-
-/**
- * When you feel like quitting. Think about why you started
- * 当你想要放弃的时候,想想当初你为何开始
- *
- * @ClassName: IBaseDao
- * @Description:
- * @Author: wanggeng
- * @Date: 2021/4/13 6:29 下午
- * @Version: 1.0
- */
-public interface IBaseDao {
-
- /**
- * 新增
- *
- * @param po
- */
- void save(PO po);
-
- /**
- * 删除
- *
- * @param ids
- */
- void remote(List ids);
-
- /**
- * 修改
- *
- * @param id
- * @param po
- */
- void update(String id, PO po);
-
- /**
- * 详情
- *
- * @param id
- * @return
- */
- DTO get(String id);
-
- /**
- * 列表
- *
- * @param page
- * @param size
- * @return
- */
- List list(int page, int size);
-
- /**
- * 统计
- *
- * @return
- */
- Long count();
-
-}
diff --git a/src/main/java/ink/wgink/gateway/dao/route/IRouteDao.java b/src/main/java/ink/wgink/gateway/dao/route/IRouteDao.java
index 487d708..dcb58cc 100644
--- a/src/main/java/ink/wgink/gateway/dao/route/IRouteDao.java
+++ b/src/main/java/ink/wgink/gateway/dao/route/IRouteDao.java
@@ -1,8 +1,10 @@
package ink.wgink.gateway.dao.route;
-import ink.wgink.gateway.dao.IBaseDao;
-import ink.wgink.gateway.pojo.dtos.route.RouteDTO;
-import ink.wgink.gateway.pojo.pos.route.RoutePO;
+import ink.wgink.gateway.pojo.route.Route;
+import org.springframework.data.mongodb.repository.Query;
+import org.springframework.data.mongodb.repository.ReactiveMongoRepository;
+import org.springframework.stereotype.Repository;
+import reactor.core.publisher.Mono;
/**
* When you feel like quitting. Think about why you started
@@ -14,8 +16,12 @@ import ink.wgink.gateway.pojo.pos.route.RoutePO;
* @Date: 2021/4/13 5:28 下午
* @Version: 1.0
*/
-public interface IRouteDao extends IBaseDao {
+@Repository
+public interface IRouteDao extends ReactiveMongoRepository {
String COLLECTION_NAME = "sys_route";
+ @Query("db."+ COLLECTION_NAME+ ".find")
+ Mono list(String uuid);
+
}
diff --git a/src/main/java/ink/wgink/gateway/dao/route/impl/RouteDaoImpl.java b/src/main/java/ink/wgink/gateway/dao/route/impl/RouteDaoImpl.java
deleted file mode 100644
index cf08242..0000000
--- a/src/main/java/ink/wgink/gateway/dao/route/impl/RouteDaoImpl.java
+++ /dev/null
@@ -1,94 +0,0 @@
-package ink.wgink.gateway.dao.route.impl;
-
-import ink.wgink.gateway.consts.ISystemConst;
-import ink.wgink.gateway.dao.BaseDao;
-import ink.wgink.gateway.dao.route.IRouteDao;
-import ink.wgink.gateway.pojo.dtos.route.RouteDTO;
-import ink.wgink.gateway.pojo.pos.route.RoutePO;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.mongodb.core.MongoTemplate;
-import org.springframework.data.mongodb.core.aggregation.Aggregation;
-import org.springframework.data.mongodb.core.aggregation.AggregationOperation;
-import org.springframework.data.mongodb.core.aggregation.AggregationResults;
-import org.springframework.data.mongodb.core.query.Criteria;
-import org.springframework.data.mongodb.core.query.Query;
-import org.springframework.data.mongodb.core.query.Update;
-import org.springframework.stereotype.Repository;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-/**
- * When you feel like quitting. Think about why you started
- * 当你想要放弃的时候,想想当初你为何开始
- *
- * @ClassName: RouteDaoImpl
- * @Description: 路由
- * @Author: wanggeng
- * @Date: 2021/4/13 5:32 下午
- * @Version: 1.0
- */
-@Slf4j
-@Repository
-public class RouteDaoImpl extends BaseDao implements IRouteDao {
-
- @Autowired
- private MongoTemplate mongoTemplate;
-
- @Override
- public void save(RoutePO routePO) {
- setSave(routePO);
- mongoTemplate.save(routePO);
- }
-
- @Override
- public void remote(List ids) {
- if (ids.isEmpty()) {
- return;
- }
- Criteria queryCriteria = Criteria.where(ISystemConst.UUID);
- for (int i = 0; i < ids.size(); i++) {
- if (i > 0) {
- queryCriteria.and(ISystemConst.UUID);
- }
- queryCriteria.is(ids.get(i));
- }
-
- mongoTemplate.remove(new Query(queryCriteria), RoutePO.class);
- }
-
- @Override
- public void update(String uuid, RoutePO routePO) {
- Update update = new Update();
- update.set("system", routePO.getSystem());
- update.set("summary", routePO.getSummary());
- update.set("path", routePO.getPath());
- update.set("uri", routePO.getUri());
- setUpdate(update);
- mongoTemplate.updateMulti(new Query(Criteria.where(ISystemConst.UUID).is(uuid)), update, RoutePO.class);
- }
-
- @Override
- public RouteDTO get(String uuid) {
- return mongoTemplate.findOne(new Query(Criteria.where(ISystemConst.UUID).is(uuid)), RouteDTO.class);
- }
-
- @Override
- public List list(int page, int size) {
- Query query = new Query();
- query.limit(getLimit(size));
- query.skip(getSkip(page, size));
- return mongoTemplate.find(query, RouteDTO.class);
- }
-
- @Override
- public Long count() {
- List operations = new ArrayList<>();
- operations.add(Aggregation.group(ISystemConst.UUID).count().as(ISystemConst.COUNT));
- Aggregation aggregation = Aggregation.newAggregation(operations);
- AggregationResults