浏览代码

Change 默认不删除测试数据

enilu 6 年之前
父节点
当前提交
dbf9c38915

文件差异内容过多而无法显示
+ 0 - 1888
flash-waimai-api/src/main/resources/import.sql


+ 43 - 0
flash-waimai-core/src/main/java/cn/enilu/flash/core/listener/WebListener.java

@@ -0,0 +1,43 @@
+package cn.enilu.flash.core.listener;
+
+import cn.enilu.flash.dao.MongoRepository;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.CommandLineRunner;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author :enilu
+ * @date :Created in 2019/10/25 11:24
+ */
+@Component
+public class WebListener implements CommandLineRunner {
+    @Autowired
+    private MongoRepository mongoRepository;
+
+    /**
+     * 初始化mongodb 数据
+     */
+    public  void initMongoData(){
+        //删除全部mongodb测试数据
+//        mongoRepository.clear(Shop.class);
+//        mongoRepository.clear(Food.class);
+//        mongoRepository.clear(Menu.class);
+//        mongoRepository.clear(Address.class);
+//        mongoRepository.clear(Ratings.class);
+//        mongoRepository.clear(Order.class);
+//        mongoRepository.clear(Carts.class);
+//        mongoRepository.clear("sesions");
+//        mongoRepository.clear("users");
+//        mongoRepository.clear("userinfos");
+    }
+    @Override
+    public void run(String... args) throws Exception {
+        Thread thread = new Thread(new Runnable() {
+            @Override
+            public void run() {
+                initMongoData();
+            }
+        });
+        thread.start();
+    }
+}

+ 8 - 1
flash-waimai-core/src/main/java/cn/enilu/flash/dao/MongoRepository.java

@@ -47,7 +47,14 @@ public class MongoRepository {
     public void delete(String collectionName, Map<String, Object> keyValues) {
         mongoTemplate.remove(Query.query(criteria(keyValues)), collectionName);
     }
-
+    public void clear(Class klass){
+         mongoTemplate.dropCollection(klass);
+         mongoTemplate.createCollection(klass);
+    }
+    public void clear(String collectionName){
+        mongoTemplate.dropCollection(collectionName);
+        mongoTemplate.createCollection(collectionName);
+    }
     public void update(BaseMongoEntity entity) {
         mongoTemplate.save(entity);
     }