Browse Source

更新工具类

tuonina 5 năm trước cách đây
mục cha
commit
ec860d448e

+ 40 - 0
tuon-core/src/main/java/cn/tonyandmoney/tuon/core/utils/AppUtils.java

@@ -0,0 +1,40 @@
+package cn.tonyandmoney.tuon.core.utils;
+
+import org.springframework.context.ApplicationContext;
+
+/**
+ * @Classname AppUtils
+ * @Description TODO
+ * @Date 2019/9/1 15:18
+ * @Created by Administrator
+ */
+public class AppUtils {
+
+    private boolean init =false;
+    private volatile ApplicationContext mContext;
+
+    private AppUtils() {
+
+    }
+    public synchronized void setContext(ApplicationContext context){
+        this.mContext =context;
+        init=true;
+    }
+
+    private static volatile AppUtils mUtils;
+    public synchronized static AppUtils utils(){
+        if (mUtils==null){
+            synchronized (AppUtils.class){
+                if (mUtils==null){
+                    mUtils = new AppUtils();
+                }
+            }
+        }
+       return mUtils;
+    }
+
+
+
+
+
+}

+ 8 - 1
tuon-core/src/main/kotlin/cn/tonyandmoney/tuon/core/config/CustomCoreConfiguration.kt

@@ -4,6 +4,7 @@ import cn.tonyandmoney.tuon.core.CoreProperties
 import cn.tonyandmoney.tuon.core.cros.GlobalCrosFilter
 import cn.tonyandmoney.tuon.core.cros.GlobalWebCrosFilter
 import cn.tonyandmoney.tuon.core.properties.CustomConfigProperties
+import cn.tonyandmoney.tuon.core.utils.AppUtils
 import com.fasterxml.jackson.databind.ObjectMapper
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer
 import com.fasterxml.jackson.module.kotlin.registerKotlinModule
@@ -11,6 +12,8 @@ import org.springframework.beans.factory.annotation.Qualifier
 import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
 import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication
 import org.springframework.boot.context.properties.EnableConfigurationProperties
+import org.springframework.context.ApplicationContext
+import org.springframework.context.ApplicationContextAware
 import org.springframework.context.annotation.Bean
 import org.springframework.context.annotation.Configuration
 import org.springframework.context.annotation.Primary
@@ -26,7 +29,7 @@ import java.text.SimpleDateFormat
  */
 @Configuration
 @EnableConfigurationProperties(value = [CustomConfigProperties::class, CoreProperties::class])
-class CustomCoreConfiguration {
+class CustomCoreConfiguration : ApplicationContextAware {
 
     companion object {
         const val CONVERTER_NAME = "hookMappingJackson2HttpMessageConverter"
@@ -103,5 +106,9 @@ class CustomCoreConfiguration {
         }
     }
 
+    override fun setApplicationContext(applicationContext: ApplicationContext) {
+        AppUtils.utils().setContext(applicationContext)
+    }
+
 
 }