xiongzhu 4 лет назад
Родитель
Сommit
91985662b1

+ 6 - 0
pom.xml

@@ -469,6 +469,12 @@
             <artifactId>sdk</artifactId>
             <version>1.0.0</version>
         </dependency>
+
+        <dependency>
+            <groupId>com.xuxueli</groupId>
+            <artifactId>xxl-job-core</artifactId>
+            <version>2.3.1</version>
+        </dependency>
     </dependencies>
 
 </project>

+ 30 - 0
src/main/java/com/izouma/nineth/config/XxlJobConfig.java

@@ -0,0 +1,30 @@
+package com.izouma.nineth.config;
+
+import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
+import lombok.AllArgsConstructor;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+@EnableConfigurationProperties(XxlJobProperties.class)
+@Configuration
+@AllArgsConstructor
+public class XxlJobConfig {
+
+    private final XxlJobProperties properties;
+
+    @Bean
+    public XxlJobSpringExecutor xxlJobExecutor() {
+        XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
+        xxlJobSpringExecutor.setAdminAddresses(properties.getAdminAddresses());
+        xxlJobSpringExecutor.setAppname(properties.getAppName());
+        xxlJobSpringExecutor.setAddress(properties.getAddress());
+        xxlJobSpringExecutor.setIp(properties.getIp());
+        xxlJobSpringExecutor.setPort(properties.getPort());
+        xxlJobSpringExecutor.setAccessToken(properties.getAccessToken());
+        xxlJobSpringExecutor.setLogPath(properties.getLogPath());
+        xxlJobSpringExecutor.setLogRetentionDays(properties.getLogRetentionDays());
+
+        return xxlJobSpringExecutor;
+    }
+}

+ 26 - 0
src/main/java/com/izouma/nineth/config/XxlJobProperties.java

@@ -0,0 +1,26 @@
+package com.izouma.nineth.config;
+
+import lombok.Data;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+@ConfigurationProperties(prefix = "xxl.job")
+@Data
+public class XxlJobProperties {
+
+    private String adminAddresses;
+
+    private String accessToken;
+
+    private String appName;
+
+    private String address;
+
+    private String ip;
+
+    private int port;
+
+    private String logPath;
+
+    private int logRetentionDays;
+
+}

+ 8 - 0
src/main/resources/application.yaml

@@ -242,6 +242,14 @@ hmpay:
 payease:
   merchant-id: 896593123
   notify-url: http://raex.frp.izouma.com/payease/notify
+xxl:
+  job:
+    admin: http://127.0.0.1:8070/xxl-job-admin
+    accessToken: default_token
+    executor:
+      appname: raex-dev
+      port: 9999
+
 ---
 
 spring: