diff --git a/pom.xml b/pom.xml index a09c7a40..136ab10b 100644 --- a/pom.xml +++ b/pom.xml @@ -51,6 +51,17 @@ springdoc-openapi-starter-webmvc-ui 2.1.0 + + + + org.springframework.boot + spring-boot-starter-quartz + + + + org.springframework.data + spring-data-redis + eu.bitwalker UserAgentUtils diff --git a/src/main/java/cn/lihongjie/coal/config/AsyncConfig.java b/src/main/java/cn/lihongjie/coal/config/AsyncConfig.java index 1b96c948..5384c169 100644 --- a/src/main/java/cn/lihongjie/coal/config/AsyncConfig.java +++ b/src/main/java/cn/lihongjie/coal/config/AsyncConfig.java @@ -18,16 +18,4 @@ import java.util.concurrent.Executor; public class AsyncConfig implements AsyncConfigurer { - @Override - public Executor getAsyncExecutor() { - ThreadPoolTaskExecutor threadPoolTaskExecutor = new ThreadPoolTaskExecutor(); - threadPoolTaskExecutor.initialize(); - return threadPoolTaskExecutor; - } - - - @Override - public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler() { - return (ex, method, params) -> log.info("异步方法异常:\nmethod: {}\nparams: {}", method.toString(), Arrays.toString(params), ex); - } } diff --git a/src/main/java/cn/lihongjie/coal/config/CacheConfig.java b/src/main/java/cn/lihongjie/coal/config/CacheConfig.java new file mode 100644 index 00000000..43761fe1 --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/config/CacheConfig.java @@ -0,0 +1,23 @@ +package cn.lihongjie.coal.config; + +import org.springframework.boot.autoconfigure.cache.RedisCacheManagerBuilderCustomizer; +import org.springframework.cache.annotation.EnableCaching; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import java.time.Duration; + +@EnableCaching +@Configuration +public class CacheConfig { + @Bean + public RedisCacheManagerBuilderCustomizer myRedisCacheManagerBuilderCustomizer() { + return new RedisCacheManagerBuilderCustomizer() { + @Override + public void customize(org.springframework.data.redis.cache.RedisCacheManager.RedisCacheManagerBuilder builder) { + + + } + }; + } +} diff --git a/src/main/java/cn/lihongjie/coal/job/DemoJob.java b/src/main/java/cn/lihongjie/coal/job/DemoJob.java new file mode 100644 index 00000000..5a750414 --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/job/DemoJob.java @@ -0,0 +1,12 @@ +package cn.lihongjie.coal.job; + +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; +import org.springframework.scheduling.quartz.QuartzJobBean; + +public class DemoJob extends QuartzJobBean { + @Override + protected void executeInternal(JobExecutionContext context) throws JobExecutionException { + + } +} diff --git a/src/main/resources/application.yaml b/src/main/resources/application.yaml index 81d72ab9..70b9da28 100644 --- a/src/main/resources/application.yaml +++ b/src/main/resources/application.yaml @@ -21,4 +21,28 @@ spring: validation-query-timeout: 1000 test-on-borrow: true test-on-return: true - enable: true \ No newline at end of file + enable: true + task: + execution: + pool: + max-size: 20 + queue-capacity: 1000 + thread-name-prefix: task- + scheduling: + thread-name-prefix: schedule- + data: + redis: + host: localhost + port: 6379 + password: 'abc@123' + + cache: + type: redis + redis: + enable-statistics: true + quartz: + auto-startup: true + job-store-type: jdbc + overwrite-existing-jobs: true + wait-for-jobs-to-complete-on-shutdown: true + startup-delay: 5 diff --git a/src/main/resources/logback-spring.xml b/src/main/resources/logback-spring.xml new file mode 100644 index 00000000..de7910f6 --- /dev/null +++ b/src/main/resources/logback-spring.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file