1
0
Переглянути джерело

第三方商户库存共享common模块修改

hyq 6 роки тому
батько
коміт
1c74d92e2f

+ 11 - 0
kmall-common/pom.xml

@@ -80,6 +80,17 @@
             <artifactId>jstl</artifactId>
             <version>1.2</version>
         </dependency>
+        <dependency>
+            <groupId>org.quartz-scheduler</groupId>
+            <artifactId>quartz</artifactId>
+            <version>2.2.3</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>c3p0</artifactId>
+                    <groupId>c3p0</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
 
         <!-- POI依赖 ,处理EXCEL WORD  PDF�?-->
         <dependency>

+ 32 - 0
kmall-common/src/main/java/com/kmall/common/constant/Dict.java

@@ -916,4 +916,36 @@ public class Dict {
             this.itemName = itemName;
         }
     }
+
+    /**
+     * 商品库存是否共享 0:否 1:是
+     */
+    public enum isStockShare {
+        item_0("0", "否"),
+        item_1("1", "是");
+
+        private String item;
+        private String itemName;
+
+        isStockShare(String item, String itemName) {
+            this.item = item;
+            this.itemName = itemName;
+        }
+
+        public String getItem() {
+            return item;
+        }
+
+        public void setItem(String item) {
+            this.item = item;
+        }
+
+        public String getItemName() {
+            return itemName;
+        }
+
+        public void setItemName(String itemName) {
+            this.itemName = itemName;
+        }
+    }
 }

+ 45 - 0
kmall-common/src/main/java/com/kmall/common/listener/ContextFinalizer.java

@@ -0,0 +1,45 @@
+package com.kmall.common.listener;
+
+
+import com.alibaba.druid.proxy.DruidDriver;
+
+import java.sql.Driver;
+import java.sql.DriverManager;
+import java.sql.SQLException;
+import java.util.Enumeration;
+import javax.servlet.ServletContextEvent;
+import javax.servlet.ServletContextListener;
+import javax.servlet.annotation.WebListener;
+
+/**
+ * @author huangyq
+ * @version 1.0
+ * 2019-02-28 15:00
+ */
+
+@WebListener
+public class ContextFinalizer implements ServletContextListener {
+    @Override
+    public void contextDestroyed(ServletContextEvent sce) {
+        Enumeration<Driver> drivers = DriverManager.getDrivers();
+        Driver d = null;
+        while (drivers.hasMoreElements()) {
+            try {
+                d = drivers.nextElement();
+                DriverManager.deregisterDriver(d);
+                System.out.println(String.format("ContextFinalizer:Driver %s deregistered", d));
+            } catch (SQLException ex) {
+                System.out.println(String.format("ContextFinalizer:Error deregistering driver %s", d) + ":" + ex);
+            }
+        }
+//        try {
+//            DruidDriver.getInstance().resetStat().shutdown();
+//        } catch (InterruptedException e) {
+//            System.out.println("ContextFinalizer:SEVERE problem cleaning up: " + e.getMessage());
+//            e.printStackTrace();
+//        }
+    }
+    @Override
+    public void contextInitialized(ServletContextEvent sce) {
+    }
+}

+ 45 - 0
kmall-common/src/main/java/com/kmall/common/listener/QuartzContextListener.java

@@ -0,0 +1,45 @@
+package com.kmall.common.listener;
+
+import org.springframework.web.context.WebApplicationContext;
+
+import javax.servlet.ServletContextEvent;
+import javax.servlet.ServletContextListener;
+
+/**
+ * @author huangyq
+ * @version 1.0
+ * 2019-02-28 15:10
+ */
+public class QuartzContextListener implements ServletContextListener {
+
+    @Override
+    public void contextDestroyed(ServletContextEvent arg0) {
+        WebApplicationContext webApplicationContext = (WebApplicationContext) arg0
+                .getServletContext()
+                .getAttribute(
+                        WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
+        org.quartz.impl.StdScheduler startQuertz = (org.quartz.impl.StdScheduler) webApplicationContext
+                .getBean("scheduler");
+        if(startQuertz != null) {
+            startQuertz.shutdown();
+        }
+        try {
+            Thread.sleep(1000);
+        } catch (InterruptedException e) {
+            e.printStackTrace();
+        }
+    }
+
+    /*
+     * (non-Javadoc)
+     *
+     * @see
+     * javax.servlet.ServletContextListener#contextInitialized(javax.servlet
+     * .ServletContextEvent)
+     */
+    @Override
+    public void contextInitialized(ServletContextEvent arg0) {
+
+    }
+
+}