diff --git a/xfg-frame-archetype-lite-app/data/log/log-error-2024-11-17.0.log b/xfg-frame-archetype-lite-app/data/log/log-error-2024-11-17.0.log
new file mode 100644
index 0000000000000000000000000000000000000000..8b93cb2f290f41dac29cc542026a8682e6fb9e06
--- /dev/null
+++ b/xfg-frame-archetype-lite-app/data/log/log-error-2024-11-17.0.log
@@ -0,0 +1,301 @@
+24-11-14.20:34:41.828 [main ] WARN GenericWebApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyArmory': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyRepository': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+24-11-14.20:34:41.872 [main ] ERROR SpringApplication - Application run failed
+org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyArmory': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyRepository': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
+ at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920)
+ at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
+ at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731)
+ at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)
+ at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
+ at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:136)
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:141)
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:90)
+ at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)
+ at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190)
+ at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132)
+ at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:248)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:227)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289)
+ at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:246)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97)
+ at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
+ at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
+ at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
+ at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
+ at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
+ at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
+ at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
+ at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
+ at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
+ at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
+ at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)
+ at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38)
+ at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11)
+ at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35)
+ at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:232)
+ at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:55)
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyRepository': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:544)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 43 common frames omitted
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:544)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 59 common frames omitted
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658)
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:213)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.resolveBeanByName(AbstractAutowireCapableBeanFactory.java:479)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:550)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 75 common frames omitted
+Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
+ ... 91 common frames omitted
+Caused by: org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.redisson.connection.pool.ConnectionPool.lambda$createConnection$0(ConnectionPool.java:132)
+ at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
+ at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
+ at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
+ at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1990)
+ at org.redisson.connection.pool.ConnectionPool.promiseFailure(ConnectionPool.java:294)
+ at org.redisson.connection.pool.ConnectionPool.lambda$createConnection$6(ConnectionPool.java:253)
+ at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
+ at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
+ at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
+ at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1990)
+ at org.redisson.client.RedisClient$1$2.run(RedisClient.java:257)
+ at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
+ at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
+ at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
+ at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569)
+ at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
+ at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
+ at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
+ at java.lang.Thread.run(Thread.java:750)
+Caused by: java.util.concurrent.CompletionException: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: 127.0.0.1/127.0.0.1:16379
+ at java.util.concurrent.CompletableFuture.encodeRelay(CompletableFuture.java:326)
+ at java.util.concurrent.CompletableFuture.completeRelay(CompletableFuture.java:338)
+ at java.util.concurrent.CompletableFuture.uniRelay(CompletableFuture.java:925)
+ at java.util.concurrent.CompletableFuture$UniRelay.tryFire(CompletableFuture.java:913)
+ ... 11 common frames omitted
+Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: 127.0.0.1/127.0.0.1:16379
+Caused by: java.net.ConnectException: Connection refused: no further information
+ at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
+ at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:716)
+ at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:337)
+ at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:334)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:776)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
+ at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
+ at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
+ at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
+ at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
+ at java.lang.Thread.run(Thread.java:750)
+24-11-14.20:34:41.875 [main ] ERROR TestContextManager - Caught exception while allowing TestExecutionListener [org.springframework.test.context.web.ServletTestExecutionListener@4009e306] to prepare test instance [cn.bugstack.test.domain.StrategyArmoryDispatchTest@f2d890c]
+java.lang.IllegalStateException: Failed to load ApplicationContext
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:98)
+ at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)
+ at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190)
+ at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132)
+ at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:248)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:227)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289)
+ at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:246)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97)
+ at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
+ at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
+ at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
+ at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
+ at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
+ at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
+ at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
+ at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
+ at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
+ at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
+ at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)
+ at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38)
+ at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11)
+ at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35)
+ at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:232)
+ at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:55)
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyArmory': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyRepository': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
+ at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920)
+ at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
+ at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731)
+ at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)
+ at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
+ at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:136)
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:141)
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:90)
+ ... 27 common frames omitted
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyRepository': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:544)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 43 common frames omitted
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:544)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 59 common frames omitted
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658)
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:213)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.resolveBeanByName(AbstractAutowireCapableBeanFactory.java:479)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:550)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 75 common frames omitted
+Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
+ ... 91 common frames omitted
+Caused by: org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.redisson.connection.pool.ConnectionPool.lambda$createConnection$0(ConnectionPool.java:132)
+ at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
+ at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
+ at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
+ at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1990)
+ at org.redisson.connection.pool.ConnectionPool.promiseFailure(ConnectionPool.java:294)
+ at org.redisson.connection.pool.ConnectionPool.lambda$createConnection$6(ConnectionPool.java:253)
+ at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
+ at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
+ at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
+ at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1990)
+ at org.redisson.client.RedisClient$1$2.run(RedisClient.java:257)
+ at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
+ at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
+ at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
+ at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569)
+ at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
+ at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
+ at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
+ at java.lang.Thread.run(Thread.java:750)
+Caused by: java.util.concurrent.CompletionException: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: 127.0.0.1/127.0.0.1:16379
+ at java.util.concurrent.CompletableFuture.encodeRelay(CompletableFuture.java:326)
+ at java.util.concurrent.CompletableFuture.completeRelay(CompletableFuture.java:338)
+ at java.util.concurrent.CompletableFuture.uniRelay(CompletableFuture.java:925)
+ at java.util.concurrent.CompletableFuture$UniRelay.tryFire(CompletableFuture.java:913)
+ ... 11 common frames omitted
+Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: 127.0.0.1/127.0.0.1:16379
+Caused by: java.net.ConnectException: Connection refused: no further information
+ at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
+ at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:716)
+ at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:337)
+ at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:334)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:776)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
+ at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
+ at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
+ at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
+ at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
+ at java.lang.Thread.run(Thread.java:750)
+24-11-17.20:59:58.453 [HikariPool-1 housekeeper] WARN HikariPool - HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=5m30s279ms767µs600ns).
diff --git a/xfg-frame-archetype-lite-app/data/log/log-info-2024-11-17.0.log b/xfg-frame-archetype-lite-app/data/log/log-info-2024-11-17.0.log
new file mode 100644
index 0000000000000000000000000000000000000000..db8719a9bc0d76b3ea24acee477520edc43901b6
--- /dev/null
+++ b/xfg-frame-archetype-lite-app/data/log/log-info-2024-11-17.0.log
@@ -0,0 +1,688 @@
+24-11-14.18:28:38.842 [main ] INFO AwardDaoTest - Starting AwardDaoTest using Java 1.8.0_412 on zhaoyongfeng with PID 13068 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-14.18:28:38.844 [main ] INFO AwardDaoTest - The following 1 profile is active: "dev"
+24-11-14.18:28:39.968 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-14.18:28:39.973 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-14.18:28:40.010 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 21 ms. Found 0 Redis repository interfaces.
+24-11-14.18:28:44.017 [main ] INFO Version - Redisson 3.23.4
+24-11-14.18:28:45.569 [redisson-netty-2-5] INFO MasterPubSubConnectionPool - 1 connections initialized for localhost/127.0.0.1:6379
+24-11-14.18:28:45.697 [redisson-netty-2-20] INFO MasterConnectionPool - 24 connections initialized for localhost/127.0.0.1:6379
+24-11-14.18:28:46.573 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-14.18:28:46.681 [main ] INFO AwardDaoTest - Started AwardDaoTest in 8.429 seconds (JVM running for 9.788)
+24-11-14.18:28:47.107 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-14.18:28:47.522 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-14.18:28:47.601 [main ] INFO AwardDaoTest - 测试结果:[Award(id=null, awardId=101, awardKey=user_credit_random, awardConfig=1,100, awardDesc=用户积分【优先透彻规则范围,如果没有则走配置】, createTime=null, updateTime=null), Award(id=null, awardId=102, awardKey=openai_use_count, awardConfig=5, awardDesc=OpenAI 增加使用次数, createTime=null, updateTime=null), Award(id=null, awardId=103, awardKey=openai_use_count, awardConfig=10, awardDesc=OpenAI 增加使用次数, createTime=null, updateTime=null), Award(id=null, awardId=104, awardKey=openai_use_count, awardConfig=20, awardDesc=OpenAI 增加使用次数, createTime=null, updateTime=null), Award(id=null, awardId=105, awardKey=openai_model, awardConfig=gpt-4, awardDesc=OpenAI 增加模型, createTime=null, updateTime=null), Award(id=null, awardId=106, awardKey=openai_model, awardConfig=dall-e-2, awardDesc=OpenAI 增加模型, createTime=null, updateTime=null), Award(id=null, awardId=107, awardKey=openai_model, awardConfig=dall-e-3, awardDesc=OpenAI 增加模型, createTime=null, updateTime=null), Award(id=null, awardId=108, awardKey=openai_use_count, awardConfig=100, awardDesc=OpenAI 增加使用次数, createTime=null, updateTime=null), Award(id=null, awardId=109, awardKey=openai_model, awardConfig=gpt-4,dall-e-2,dall-e-3, awardDesc=OpenAI 增加模型, createTime=null, updateTime=null), Award(id=null, awardId=100, awardKey=user_credit_blacklist, awardConfig=1, awardDesc=黑名单积分, createTime=null, updateTime=null)]
+24-11-14.18:28:47.637 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-14.18:28:47.661 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-14.20:34:24.958 [main ] INFO StrategyArmoryTest - Starting StrategyArmoryTest using Java 1.8.0_412 on zhaoyongfeng with PID 21492 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-14.20:34:24.960 [main ] INFO StrategyArmoryTest - The following 1 profile is active: "dev"
+24-11-14.20:34:26.080 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-14.20:34:26.084 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-14.20:34:26.136 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 32 ms. Found 0 Redis repository interfaces.
+24-11-14.20:34:28.965 [main ] INFO Version - Redisson 3.23.4
+24-11-14.20:34:41.828 [main ] WARN GenericWebApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyArmory': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyRepository': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+24-11-14.20:34:41.841 [main ] INFO ConditionEvaluationReportLoggingListener -
+
+Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
+24-11-14.20:34:41.872 [main ] ERROR SpringApplication - Application run failed
+org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyArmory': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyRepository': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
+ at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920)
+ at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
+ at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731)
+ at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)
+ at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
+ at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:136)
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:141)
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:90)
+ at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)
+ at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190)
+ at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132)
+ at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:248)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:227)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289)
+ at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:246)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97)
+ at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
+ at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
+ at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
+ at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
+ at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
+ at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
+ at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
+ at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
+ at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
+ at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
+ at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)
+ at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38)
+ at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11)
+ at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35)
+ at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:232)
+ at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:55)
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyRepository': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:544)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 43 common frames omitted
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:544)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 59 common frames omitted
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658)
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:213)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.resolveBeanByName(AbstractAutowireCapableBeanFactory.java:479)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:550)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 75 common frames omitted
+Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
+ ... 91 common frames omitted
+Caused by: org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.redisson.connection.pool.ConnectionPool.lambda$createConnection$0(ConnectionPool.java:132)
+ at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
+ at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
+ at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
+ at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1990)
+ at org.redisson.connection.pool.ConnectionPool.promiseFailure(ConnectionPool.java:294)
+ at org.redisson.connection.pool.ConnectionPool.lambda$createConnection$6(ConnectionPool.java:253)
+ at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
+ at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
+ at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
+ at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1990)
+ at org.redisson.client.RedisClient$1$2.run(RedisClient.java:257)
+ at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
+ at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
+ at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
+ at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569)
+ at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
+ at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
+ at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
+ at java.lang.Thread.run(Thread.java:750)
+Caused by: java.util.concurrent.CompletionException: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: 127.0.0.1/127.0.0.1:16379
+ at java.util.concurrent.CompletableFuture.encodeRelay(CompletableFuture.java:326)
+ at java.util.concurrent.CompletableFuture.completeRelay(CompletableFuture.java:338)
+ at java.util.concurrent.CompletableFuture.uniRelay(CompletableFuture.java:925)
+ at java.util.concurrent.CompletableFuture$UniRelay.tryFire(CompletableFuture.java:913)
+ ... 11 common frames omitted
+Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: 127.0.0.1/127.0.0.1:16379
+Caused by: java.net.ConnectException: Connection refused: no further information
+ at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
+ at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:716)
+ at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:337)
+ at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:334)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:776)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
+ at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
+ at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
+ at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
+ at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
+ at java.lang.Thread.run(Thread.java:750)
+24-11-14.20:34:41.875 [main ] ERROR TestContextManager - Caught exception while allowing TestExecutionListener [org.springframework.test.context.web.ServletTestExecutionListener@4009e306] to prepare test instance [cn.bugstack.test.domain.StrategyArmoryDispatchTest@f2d890c]
+java.lang.IllegalStateException: Failed to load ApplicationContext
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:98)
+ at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)
+ at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190)
+ at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132)
+ at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:248)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:227)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289)
+ at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:246)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97)
+ at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
+ at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
+ at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
+ at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
+ at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
+ at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
+ at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
+ at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
+ at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
+ at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
+ at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
+ at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)
+ at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38)
+ at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11)
+ at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35)
+ at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:232)
+ at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:55)
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyArmory': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyRepository': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
+ at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920)
+ at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
+ at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731)
+ at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)
+ at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
+ at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:136)
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:141)
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:90)
+ ... 27 common frames omitted
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'strategyRepository': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:544)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 43 common frames omitted
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
+ at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:544)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 59 common frames omitted
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redissonClient' defined in class path resource [cn/bugstack/config/RedisClientConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658)
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:213)
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.resolveBeanByName(AbstractAutowireCapableBeanFactory.java:479)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:550)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
+ at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
+ at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
+ at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
+ ... 75 common frames omitted
+Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
+ at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
+ ... 91 common frames omitted
+Caused by: org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0.0.1/127.0.0.1:16379
+ at org.redisson.connection.pool.ConnectionPool.lambda$createConnection$0(ConnectionPool.java:132)
+ at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
+ at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
+ at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
+ at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1990)
+ at org.redisson.connection.pool.ConnectionPool.promiseFailure(ConnectionPool.java:294)
+ at org.redisson.connection.pool.ConnectionPool.lambda$createConnection$6(ConnectionPool.java:253)
+ at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
+ at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
+ at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
+ at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1990)
+ at org.redisson.client.RedisClient$1$2.run(RedisClient.java:257)
+ at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
+ at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
+ at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
+ at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569)
+ at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
+ at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
+ at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
+ at java.lang.Thread.run(Thread.java:750)
+Caused by: java.util.concurrent.CompletionException: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: 127.0.0.1/127.0.0.1:16379
+ at java.util.concurrent.CompletableFuture.encodeRelay(CompletableFuture.java:326)
+ at java.util.concurrent.CompletableFuture.completeRelay(CompletableFuture.java:338)
+ at java.util.concurrent.CompletableFuture.uniRelay(CompletableFuture.java:925)
+ at java.util.concurrent.CompletableFuture$UniRelay.tryFire(CompletableFuture.java:913)
+ ... 11 common frames omitted
+Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: 127.0.0.1/127.0.0.1:16379
+Caused by: java.net.ConnectException: Connection refused: no further information
+ at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
+ at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:716)
+ at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:337)
+ at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:334)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:776)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
+ at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
+ at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
+ at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
+ at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
+ at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
+ at java.lang.Thread.run(Thread.java:750)
+24-11-14.20:35:17.190 [main ] INFO StrategyArmoryTest - Starting StrategyArmoryTest using Java 1.8.0_412 on zhaoyongfeng with PID 29800 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-14.20:35:17.191 [main ] INFO StrategyArmoryTest - The following 1 profile is active: "dev"
+24-11-14.20:35:18.215 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-14.20:35:18.222 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-14.20:35:18.281 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 40 ms. Found 0 Redis repository interfaces.
+24-11-14.20:35:20.873 [main ] INFO Version - Redisson 3.23.4
+24-11-14.20:35:22.401 [redisson-netty-2-5] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-14.20:35:22.416 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-14.20:35:24.829 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-14.20:35:24.917 [main ] INFO StrategyArmoryTest - Started StrategyArmoryTest in 8.301 seconds (JVM running for 9.514)
+24-11-14.20:35:25.387 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-14.20:35:25.734 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-14.20:48:21.469 [main ] INFO StrategyArmoryTest - Starting StrategyArmoryTest using Java 1.8.0_412 on zhaoyongfeng with PID 10720 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-14.20:48:21.470 [main ] INFO StrategyArmoryTest - The following 1 profile is active: "dev"
+24-11-14.20:48:22.498 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-14.20:48:22.502 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-14.20:48:22.550 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 30 ms. Found 0 Redis repository interfaces.
+24-11-14.20:48:25.106 [main ] INFO Version - Redisson 3.23.4
+24-11-14.20:48:26.654 [redisson-netty-2-5] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-14.20:48:26.669 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-14.20:48:29.119 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-14.20:48:29.201 [main ] INFO StrategyArmoryTest - Started StrategyArmoryTest in 8.251 seconds (JVM running for 9.451)
+24-11-14.20:48:29.640 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-14.20:48:29.953 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-14.20:48:30.141 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-14.20:48:30.151 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-14.21:31:44.058 [main ] INFO StrategyArmoryTest - Starting StrategyArmoryTest using Java 1.8.0_412 on zhaoyongfeng with PID 23272 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-14.21:31:44.059 [main ] INFO StrategyArmoryTest - The following 1 profile is active: "dev"
+24-11-14.21:31:45.122 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-14.21:31:45.126 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-14.21:31:45.173 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 31 ms. Found 0 Redis repository interfaces.
+24-11-14.21:31:47.899 [main ] INFO Version - Redisson 3.23.4
+24-11-14.21:31:49.517 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-14.21:31:49.537 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-14.21:31:52.254 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-14.21:31:52.388 [main ] INFO StrategyArmoryTest - Started StrategyArmoryTest in 8.955 seconds (JVM running for 10.172)
+24-11-14.21:31:52.899 [main ] INFO StrategyArmoryTest - 测试结果:110 - 奖品ID值
+24-11-14.21:32:17.345 [main ] INFO StrategyArmoryTest - Starting StrategyArmoryTest using Java 1.8.0_412 on zhaoyongfeng with PID 29904 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-14.21:32:17.346 [main ] INFO StrategyArmoryTest - The following 1 profile is active: "dev"
+24-11-14.21:32:18.391 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-14.21:32:18.395 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-14.21:32:18.449 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 36 ms. Found 0 Redis repository interfaces.
+24-11-14.21:32:21.062 [main ] INFO Version - Redisson 3.23.4
+24-11-14.21:32:22.602 [redisson-netty-2-5] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-14.21:32:22.616 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-14.21:32:24.978 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-14.21:32:25.062 [main ] INFO StrategyArmoryTest - Started StrategyArmoryTest in 8.245 seconds (JVM running for 9.4)
+24-11-14.21:32:25.538 [main ] INFO StrategyArmoryTest - 测试结果:110 - 奖品ID值
+24-11-14.21:32:25.541 [main ] INFO StrategyArmoryTest - 测试结果:110 - 奖品ID值
+24-11-14.21:32:25.543 [main ] INFO StrategyArmoryTest - 测试结果:110 - 奖品ID值
+24-11-14.21:32:25.546 [main ] INFO StrategyArmoryTest - 测试结果:111 - 奖品ID值
+24-11-14.21:32:25.549 [main ] INFO StrategyArmoryTest - 测试结果:111 - 奖品ID值
+24-11-17.17:19:29.708 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 22232 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.17:19:29.709 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.17:19:30.889 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.17:19:30.894 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.17:19:30.966 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 50 ms. Found 0 Redis repository interfaces.
+24-11-17.17:19:33.717 [main ] INFO Version - Redisson 3.23.4
+24-11-17.17:19:35.324 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:19:35.339 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:19:37.861 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.17:19:37.945 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.881 seconds (JVM running for 10.163)
+24-11-17.17:19:38.397 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.17:19:38.766 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.17:19:38.908 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.17:19:38.924 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.17:25:57.400 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 16100 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.17:25:57.402 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.17:25:58.495 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.17:25:58.500 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.17:25:58.567 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 47 ms. Found 0 Redis repository interfaces.
+24-11-17.17:26:01.166 [main ] INFO Version - Redisson 3.23.4
+24-11-17.17:26:02.702 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:26:02.718 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:26:05.216 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.17:26:05.297 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.446 seconds (JVM running for 9.661)
+24-11-17.17:26:05.743 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.17:26:06.046 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.17:26:06.185 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.17:26:06.196 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.17:28:15.175 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 19732 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.17:28:15.176 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.17:28:16.283 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.17:28:16.288 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.17:28:16.359 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 50 ms. Found 0 Redis repository interfaces.
+24-11-17.17:28:19.102 [main ] INFO Version - Redisson 3.23.4
+24-11-17.17:28:20.711 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:28:20.725 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:28:23.519 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.17:28:23.644 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 9.112 seconds (JVM running for 11.001)
+24-11-17.17:28:24.102 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.17:28:24.479 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.17:28:38.175 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.17:28:38.191 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.17:30:31.698 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 22160 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.17:30:31.700 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.17:30:32.759 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.17:30:32.763 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.17:30:32.825 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 46 ms. Found 0 Redis repository interfaces.
+24-11-17.17:30:35.458 [main ] INFO Version - Redisson 3.23.4
+24-11-17.17:30:37.014 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:30:37.031 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:30:39.404 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.17:30:39.492 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.327 seconds (JVM running for 9.493)
+24-11-17.17:30:39.924 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.17:30:40.228 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.17:30:40.357 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.17:30:40.371 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.17:33:48.611 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 4684 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.17:33:48.612 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.17:33:49.691 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.17:33:49.697 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.17:33:49.771 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 52 ms. Found 0 Redis repository interfaces.
+24-11-17.17:33:52.638 [main ] INFO Version - Redisson 3.23.4
+24-11-17.17:33:54.196 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:33:54.212 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:33:56.962 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.17:33:57.065 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.963 seconds (JVM running for 10.442)
+24-11-17.17:33:57.530 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.17:33:57.836 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.17:33:58.014 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.17:33:58.034 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.17:36:01.078 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 1196 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.17:36:01.079 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.17:36:02.123 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.17:36:02.128 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.17:36:02.196 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 48 ms. Found 0 Redis repository interfaces.
+24-11-17.17:36:04.876 [main ] INFO Version - Redisson 3.23.4
+24-11-17.17:36:07.276 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:36:07.299 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:36:10.343 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.17:36:10.464 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 9.983 seconds (JVM running for 11.272)
+24-11-17.17:36:10.942 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.17:36:11.251 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.17:36:11.388 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.17:36:11.400 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.17:37:13.199 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 16096 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.17:37:13.200 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.17:37:14.291 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.17:37:14.296 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.17:37:14.359 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 45 ms. Found 0 Redis repository interfaces.
+24-11-17.17:37:17.190 [main ] INFO Version - Redisson 3.23.4
+24-11-17.17:37:19.016 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:37:19.034 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:37:22.218 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.17:37:22.326 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 9.772 seconds (JVM running for 11.516)
+24-11-17.17:37:22.755 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.17:37:23.077 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.17:37:28.482 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.17:37:28.498 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.17:47:54.374 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 12832 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.17:47:54.375 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.17:47:55.549 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.17:47:55.556 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.17:47:55.632 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 52 ms. Found 0 Redis repository interfaces.
+24-11-17.17:47:58.279 [main ] INFO Version - Redisson 3.23.4
+24-11-17.17:47:59.862 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:47:59.879 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:48:02.397 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.17:48:02.481 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.622 seconds (JVM running for 9.817)
+24-11-17.17:48:02.918 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.17:48:03.234 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.17:48:03.414 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.17:48:03.422 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.17:50:04.558 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 9632 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.17:50:04.558 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.17:50:05.611 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.17:50:05.615 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.17:50:05.674 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 43 ms. Found 0 Redis repository interfaces.
+24-11-17.17:50:08.319 [main ] INFO Version - Redisson 3.23.4
+24-11-17.17:50:09.873 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:50:09.887 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.17:50:12.604 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.17:50:12.726 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.681 seconds (JVM running for 9.862)
+24-11-17.17:50:13.187 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.17:50:13.499 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.17:50:13.646 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.17:50:13.657 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.19:19:01.235 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 19204 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.19:19:01.237 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.19:19:02.471 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.19:19:02.476 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.19:19:02.550 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 56 ms. Found 0 Redis repository interfaces.
+24-11-17.19:19:05.459 [main ] INFO Version - Redisson 3.23.4
+24-11-17.19:19:07.180 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.19:19:07.196 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.19:19:09.960 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.19:19:10.083 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 9.519 seconds (JVM running for 11.04)
+24-11-17.19:19:10.517 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.19:19:10.834 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.19:19:10.974 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.19:19:10.981 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.19:23:13.427 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 21928 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.19:23:13.429 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.19:23:14.694 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.19:23:14.699 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.19:23:14.771 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 50 ms. Found 0 Redis repository interfaces.
+24-11-17.19:23:17.520 [main ] INFO Version - Redisson 3.23.4
+24-11-17.19:23:19.087 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.19:23:19.104 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.19:23:21.819 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.19:23:21.921 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 9.064 seconds (JVM running for 10.328)
+24-11-17.19:23:22.385 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.19:23:22.750 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.19:23:22.868 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:xiaofuge strategyId:100001 ruleModel:rule_blacklist
+24-11-17.19:24:47.132 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.19:24:47.148 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.19:25:05.474 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 12948 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.19:25:05.475 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.19:25:06.571 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.19:25:06.575 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.19:25:06.636 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 44 ms. Found 0 Redis repository interfaces.
+24-11-17.19:25:09.251 [main ] INFO Version - Redisson 3.23.4
+24-11-17.19:25:11.023 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.19:25:11.045 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.19:25:13.916 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.19:25:14.005 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 9.083 seconds (JVM running for 10.303)
+24-11-17.19:25:14.437 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.19:25:14.755 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.19:25:14.870 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:xiaofuge strategyId:100002 ruleModel:rule_blacklist
+24-11-17.19:25:43.868 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.19:25:43.883 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.19:25:48.608 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 20048 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.19:25:48.609 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.19:25:49.750 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.19:25:49.754 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.19:25:49.821 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 49 ms. Found 0 Redis repository interfaces.
+24-11-17.19:25:52.562 [main ] INFO Version - Redisson 3.23.4
+24-11-17.19:25:54.192 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.19:25:54.206 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.19:25:56.746 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.19:25:56.850 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.802 seconds (JVM running for 9.997)
+24-11-17.19:25:57.342 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:user003 strategyId:100001 ruleModel:rule_blacklist
+24-11-17.19:25:57.407 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.19:25:57.808 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.19:26:31.931 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.19:26:31.946 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.19:35:16.877 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 3568 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.19:35:16.879 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.19:35:18.321 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.19:35:18.327 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.19:35:18.396 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 49 ms. Found 0 Redis repository interfaces.
+24-11-17.19:35:21.305 [main ] INFO Version - Redisson 3.23.4
+24-11-17.19:35:22.971 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.19:35:22.992 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.19:35:25.781 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.19:35:25.920 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 9.685 seconds (JVM running for 11.098)
+24-11-17.19:35:26.515 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:user003 strategyId:100001 ruleModel:rule_blacklist
+24-11-17.19:35:26.562 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.19:35:26.894 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.20:59:58.453 [HikariPool-1 housekeeper] WARN HikariPool - HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=5m30s279ms767µs600ns).
+24-11-17.21:05:17.068 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.21:05:17.079 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.23:01:14.808 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 24732 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.23:01:14.810 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.23:01:15.895 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.23:01:15.900 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.23:01:15.968 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 47 ms. Found 0 Redis repository interfaces.
+24-11-17.23:01:18.707 [main ] INFO Version - Redisson 3.23.4
+24-11-17.23:01:20.294 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:01:20.311 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:01:22.724 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.23:01:22.811 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.632 seconds (JVM running for 9.977)
+24-11-17.23:01:23.312 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:xiaofuge strategyId:100002 ruleModel:rule_blacklist
+24-11-17.23:01:23.373 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.23:01:23.770 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.23:01:23.869 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.23:01:23.871 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.23:03:47.237 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 16520 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.23:03:47.239 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.23:03:48.444 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.23:03:48.450 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.23:03:48.525 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 52 ms. Found 0 Redis repository interfaces.
+24-11-17.23:03:51.312 [main ] INFO Version - Redisson 3.23.4
+24-11-17.23:03:52.867 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:03:52.880 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:04:03.278 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.23:04:03.419 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 16.827 seconds (JVM running for 18.341)
+24-11-17.23:04:07.400 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:xiaofuge strategyId:100002 ruleModel:rule_blacklist
+24-11-17.23:04:27.723 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 24612 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.23:04:27.724 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.23:04:28.888 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.23:04:28.893 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.23:04:28.964 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 52 ms. Found 0 Redis repository interfaces.
+24-11-17.23:04:31.672 [main ] INFO Version - Redisson 3.23.4
+24-11-17.23:04:33.221 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:04:33.235 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:04:35.828 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.23:04:35.921 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.787 seconds (JVM running for 10.016)
+24-11-17.23:04:36.409 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:xiaofuge strategyId:100001 ruleModel:rule_blacklist
+24-11-17.23:04:36.449 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.23:04:36.754 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.23:04:36.799 [main ] INFO RuleWeightLogicFilter - 规则过滤-权重范围 userId:xiaofuge strategyId:100001 ruleModel:rule_weight
+24-11-17.23:04:36.805 [main ] INFO DefaultRaffleStrategy - 抽奖前规则过滤 userId: xiaofuge ruleModel: rule_weight code: 0001 info: 接管;后续的流程,受规则引擎执行结果影响
+24-11-17.23:04:36.847 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.23:04:36.855 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.23:06:34.772 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 6000 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.23:06:34.774 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.23:06:35.787 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.23:06:35.791 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.23:06:35.851 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 44 ms. Found 0 Redis repository interfaces.
+24-11-17.23:06:38.443 [main ] INFO Version - Redisson 3.23.4
+24-11-17.23:06:39.986 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:06:40.000 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:06:42.379 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.23:06:42.475 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.23 seconds (JVM running for 9.393)
+24-11-17.23:06:42.928 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:user003 strategyId:100001 ruleModel:rule_blacklist
+24-11-17.23:06:42.972 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.23:06:43.265 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.23:06:43.514 [main ] INFO RaffleStrategyTest - 请求参数:{"strategyId":100001,"userId":"user003"}
+24-11-17.23:06:43.517 [main ] INFO RaffleStrategyTest - 测试结果:{"awardId":100}
+24-11-17.23:06:43.549 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.23:06:43.565 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.23:11:41.630 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 23860 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.23:11:41.631 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.23:11:42.697 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.23:11:42.702 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.23:11:42.762 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 43 ms. Found 0 Redis repository interfaces.
+24-11-17.23:11:46.284 [main ] INFO Version - Redisson 3.23.4
+24-11-17.23:11:48.201 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:11:48.215 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:12:15.426 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.23:12:15.542 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 34.499 seconds (JVM running for 35.898)
+24-11-17.23:12:55.591 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:xiaofuge strategyId:100001 ruleModel:rule_blacklist
+24-11-17.23:12:55.748 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.23:12:57.211 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.23:12:57.403 [main ] INFO RuleWeightLogicFilter - 规则过滤-权重范围 userId:xiaofuge strategyId:100001 ruleModel:rule_weight
+24-11-17.23:12:57.416 [main ] INFO DefaultRaffleStrategy - 抽奖前规则过滤 userId: xiaofuge ruleModel: rule_weight code: 0001 info: 接管;后续的流程,受规则引擎执行结果影响
+24-11-17.23:14:04.388 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.23:14:04.407 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.23:14:46.120 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 22024 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.23:14:46.121 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.23:14:47.200 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.23:14:47.204 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.23:14:47.264 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 44 ms. Found 0 Redis repository interfaces.
+24-11-17.23:14:50.756 [main ] INFO Version - Redisson 3.23.4
+24-11-17.23:14:52.610 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:14:52.624 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:14:55.851 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.23:14:55.963 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 10.382 seconds (JVM running for 11.787)
+24-11-17.23:15:22.828 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:xiaofuge strategyId:100001 ruleModel:rule_blacklist
+24-11-17.23:15:22.897 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.23:15:23.616 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.23:15:23.692 [main ] INFO RuleWeightLogicFilter - 规则过滤-权重范围 userId:xiaofuge strategyId:100001 ruleModel:rule_weight
+24-11-17.23:15:23.698 [main ] INFO DefaultRaffleStrategy - 抽奖前规则过滤 userId: xiaofuge ruleModel: rule_weight code: 0001 info: 接管;后续的流程,受规则引擎执行结果影响
+24-11-17.23:15:43.239 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.23:15:43.251 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
+24-11-17.23:42:39.215 [main ] INFO RaffleStrategyTest - Starting RaffleStrategyTest using Java 1.8.0_412 on zhaoyongfeng with PID 19244 (started by zhaoyongfeng in C:\Users\31126\Desktop\study\xfg-frame-archetype-lite\xfg-frame-archetype-lite-app)
+24-11-17.23:42:39.217 [main ] INFO RaffleStrategyTest - The following 1 profile is active: "dev"
+24-11-17.23:42:40.422 [main ] INFO RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode
+24-11-17.23:42:40.427 [main ] INFO RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+24-11-17.23:42:40.494 [main ] INFO RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 43 ms. Found 0 Redis repository interfaces.
+24-11-17.23:42:43.219 [main ] INFO Version - Redisson 3.23.4
+24-11-17.23:42:44.768 [redisson-netty-2-4] INFO MasterPubSubConnectionPool - 1 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:42:44.782 [redisson-netty-2-13] INFO MasterConnectionPool - 5 connections initialized for 127.0.0.1/127.0.0.1:6379
+24-11-17.23:42:47.306 [main ] INFO EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
+24-11-17.23:42:47.396 [main ] INFO RaffleStrategyTest - Started RaffleStrategyTest in 8.735 seconds (JVM running for 9.888)
+24-11-17.23:42:47.895 [main ] INFO RuleBackListLogicFilter - 规则过滤-黑名单 userId:xiaofuge strategyId:100001 ruleModel:rule_blacklist
+24-11-17.23:42:47.936 [main ] INFO HikariDataSource - HikariPool-1 - Starting...
+24-11-17.23:42:48.259 [main ] INFO HikariDataSource - HikariPool-1 - Start completed.
+24-11-17.23:42:48.306 [main ] INFO RuleWeightLogicFilter - 规则过滤-权重范围 userId:xiaofuge strategyId:100001 ruleModel:rule_weight
+24-11-17.23:42:48.311 [main ] INFO DefaultRaffleStrategy - 抽奖前规则过滤 userId: xiaofuge ruleModel: rule_weight code: 0001 info: 接管;后续的流程,受规则引擎执行结果影响
+24-11-17.23:42:48.353 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown initiated...
+24-11-17.23:42:48.356 [SpringApplicationShutdownHook] INFO HikariDataSource - HikariPool-1 - Shutdown completed.
diff --git a/xfg-frame-archetype-lite-app/src/main/resources/mybatis/mapper/strategy_award_mapper.xml b/xfg-frame-archetype-lite-app/src/main/resources/mybatis/mapper/strategy_award_mapper.xml
index 29972809552d9a98500734193665da071fe55338..67ee71dc99300591671fc9598edacb7e08be1955 100644
--- a/xfg-frame-archetype-lite-app/src/main/resources/mybatis/mapper/strategy_award_mapper.xml
+++ b/xfg-frame-archetype-lite-app/src/main/resources/mybatis/mapper/strategy_award_mapper.xml
@@ -28,5 +28,10 @@
where strategy_id = #{strategy_id}
+
+
diff --git a/xfg-frame-archetype-lite-app/src/test/java/cn/bugstack/test/domain/LogicChainTest.java b/xfg-frame-archetype-lite-app/src/test/java/cn/bugstack/test/domain/LogicChainTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..c915b82c955987421fa6ec65768fe2c225a46f6f
--- /dev/null
+++ b/xfg-frame-archetype-lite-app/src/test/java/cn/bugstack/test/domain/LogicChainTest.java
@@ -0,0 +1,67 @@
+package cn.bugstack.test.domain;
+
+import cn.bugstack.domain.strategy.service.armory.IStrategyArmory;
+import cn.bugstack.domain.strategy.service.rule.chain.ILogicChain;
+import cn.bugstack.domain.strategy.service.rule.chain.factory.DefaultChainFactory;
+import cn.bugstack.domain.strategy.service.rule.chain.impl.RuleWeightLogicChain;
+import lombok.extern.slf4j.Slf4j;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+import org.springframework.test.util.ReflectionTestUtils;
+
+import javax.annotation.Resource;
+
+/**
+ * @ClassName: LogicChainTest
+ * @Description:
+ * @Author: zhaoyongfeng
+ * @Date: 2024/11/18 22:49
+ */
+@Slf4j
+@RunWith(SpringRunner.class)
+@SpringBootTest
+public class LogicChainTest {
+ @Resource
+ private IStrategyArmory strategyArmory;
+ @Resource
+ private RuleWeightLogicChain ruleWeightLogicChain;
+ @Resource
+ private DefaultChainFactory defaultChainFactory;
+
+ @Before
+ public void setUp() {
+ // 策略装配 100001、100002、100003
+ log.info("测试结果:{}", strategyArmory.assembleLotteryStrategy(100001L));
+ // log.info("测试结果:{}", strategyArmory.assembleLotteryStrategy(100002L));
+ // log.info("测试结果:{}", strategyArmory.assembleLotteryStrategy(100003L));
+ }
+
+ @Test
+ public void test_LogicChain_rule_blacklist() {
+ ILogicChain logicChain = defaultChainFactory.openLogicChain(100001L);
+ Integer awardId = logicChain.logic("user001", 100001L);
+ log.info("测试结果:{}", awardId);
+ }
+
+ @Test
+ public void test_LogicChain_rule_weight() {
+ // 通过反射 mock 规则中的值
+ ReflectionTestUtils.setField(ruleWeightLogicChain, "userScore", 4900L);
+
+ ILogicChain logicChain = defaultChainFactory.openLogicChain(100001L);
+ Integer awardId = logicChain.logic("xiaofuge", 100001L);
+ log.info("测试结果:{}", awardId);
+ }
+
+ @Test
+ public void test_LogicChain_rule_default() {
+ ILogicChain logicChain = defaultChainFactory.openLogicChain(100001L);
+ Integer awardId = logicChain.logic("xiaofuge", 100001L);
+ log.info("测试结果:{}", awardId);
+ }
+
+}
+
diff --git a/xfg-frame-archetype-lite-app/src/test/java/cn/bugstack/test/domain/RaffleStrategyTest.java b/xfg-frame-archetype-lite-app/src/test/java/cn/bugstack/test/domain/RaffleStrategyTest.java
index 0dd43dc61830f7a217bcd49247d83d5d60b05ed4..98ef0becdbd6d4f55aba9e6b308d2eb68249a60d 100644
--- a/xfg-frame-archetype-lite-app/src/test/java/cn/bugstack/test/domain/RaffleStrategyTest.java
+++ b/xfg-frame-archetype-lite-app/src/test/java/cn/bugstack/test/domain/RaffleStrategyTest.java
@@ -2,8 +2,10 @@ package cn.bugstack.test.domain;
import cn.bugstack.domain.strategy.model.entity.RaffleAwardEntity;
import cn.bugstack.domain.strategy.model.entity.RaffleFactorEntity;
-import cn.bugstack.domain.strategy.service.IRaffleStrategy;
-import cn.bugstack.domain.strategy.service.rule.impl.RuleWeightLogicFilter;
+import cn.bugstack.domain.strategy.IRaffleStrategy;
+import cn.bugstack.domain.strategy.service.armory.IStrategyArmory;
+import cn.bugstack.domain.strategy.service.rule.chain.impl.DefaultLogicChain;
+import cn.bugstack.domain.strategy.service.rule.chain.impl.RuleWeightLogicChain;
import com.alibaba.fastjson.JSON;
import lombok.extern.slf4j.Slf4j;
import org.junit.Before;
@@ -14,7 +16,6 @@ import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.util.ReflectionTestUtils;
import javax.annotation.Resource;
-import java.security.PrivateKey;
/**
* @ClassName: RaffleStrategyTest
@@ -26,14 +27,27 @@ import java.security.PrivateKey;
@Slf4j
@RunWith(SpringRunner.class)
public class RaffleStrategyTest {
+ @Resource
+ private IStrategyArmory strategyArmory;
@Resource
private IRaffleStrategy raffleStrategy;
@Resource
- private RuleWeightLogicFilter ruleWeightLogicFilter;
+ private RuleWeightLogicChain ruleWeightLogicChain;
+ @Resource
+ private DefaultLogicChain defaultLogicChain;
+
@Before
public void setUp() {
- ReflectionTestUtils.setField(ruleWeightLogicFilter, "userScore", 4500L);
+ // 策略装配 100001、100002、100003
+ log.info("测试结果:{}", strategyArmory.assembleLotteryStrategy(100001L));
+/* log.info("测试结果:{}", strategyArmory.assembleLotteryStrategy(100002L));
+ log.info("测试结果:{}", strategyArmory.assembleLotteryStrategy(100003L));*/
+
+ // 通过反射 mock 规则中的值
+ ReflectionTestUtils.setField(ruleWeightLogicChain, "userScore", 40500L);
+ ReflectionTestUtils.setField(defaultLogicChain, "userRaffleCount", 10L);
}
+
@Test
public void test_performRaffle() {
RaffleFactorEntity raffleFactorEntity = RaffleFactorEntity.builder()
@@ -60,6 +74,24 @@ public class RaffleStrategyTest {
log.info("测试结果:{}", JSON.toJSONString(raffleAwardEntity));
}
+ /**
+ * 次数错校验,抽奖n次后解锁。100003 策略,你可以通过调整 @Before 的 setUp 方法中个人抽奖次数来验证。比如最开始设置0,之后设置10
+ * ReflectionTestUtils.setField(ruleLockLogicFilter, "userRaffleCount", 10L);
+ */
+ @Test
+ public void test_raffle_center_rule_lock(){
+ RaffleFactorEntity raffleFactorEntity = RaffleFactorEntity.builder()
+ .userId("xiaofuge")
+ .strategyId(100003L)
+ .build();
+
+ RaffleAwardEntity raffleAwardEntity = raffleStrategy.performRaffle(raffleFactorEntity);
+
+ log.info("请求参数:{}", JSON.toJSONString(raffleFactorEntity));
+ log.info("测试结果:{}", JSON.toJSONString(raffleAwardEntity));
+ }
+
+
}
diff --git a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/service/raffle/AbstractRaffleStrategy.java b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/AbstractRaffleStrategy.java
similarity index 51%
rename from xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/service/raffle/AbstractRaffleStrategy.java
rename to xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/AbstractRaffleStrategy.java
index a2350e6a9cf1df37d90791b0478d20a0877704be..57abe2e193e983464ebd09032f0accdfc93e19cd 100644
--- a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/service/raffle/AbstractRaffleStrategy.java
+++ b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/AbstractRaffleStrategy.java
@@ -1,14 +1,15 @@
-package cn.bugstack.domain.strategy.service.raffle;
+package cn.bugstack.domain.strategy;
import cn.bugstack.domain.strategy.model.entity.RaffleAwardEntity;
import cn.bugstack.domain.strategy.model.entity.RaffleFactorEntity;
import cn.bugstack.domain.strategy.model.entity.RuleActionEntity;
import cn.bugstack.domain.strategy.model.entity.StrategyEntity;
import cn.bugstack.domain.strategy.model.valobj.RuleLogicCheckTypeVO;
+import cn.bugstack.domain.strategy.model.valobj.StrategyAwardRuleModelVO;
import cn.bugstack.domain.strategy.repository.IStrategyRepository;
-import cn.bugstack.domain.strategy.service.IRaffleStrategy;
import cn.bugstack.domain.strategy.service.armory.IStrategyDispatch;
-import cn.bugstack.domain.strategy.service.rule.factory.DefaultLogicFactory;
+import cn.bugstack.domain.strategy.service.rule.chain.ILogicChain;
+import cn.bugstack.domain.strategy.service.rule.chain.factory.DefaultChainFactory;
import cn.bugstack.types.enums.ResponseCode;
import cn.bugstack.types.exception.AppException;
import lombok.extern.slf4j.Slf4j;
@@ -27,10 +28,13 @@ public abstract class AbstractRaffleStrategy implements IRaffleStrategy {
protected IStrategyRepository repository;
// 策略调度服务 -> 只负责抽奖处理,通过新增接口的方式,隔离职责,不需要使用方关心或者调用抽奖的初始化
protected IStrategyDispatch strategyDispatch;
+ // 抽奖的责任链 -> 从抽奖的规则中,解耦出前置规则为责任链处理
+ private final DefaultChainFactory defaultChainFactory;
- public AbstractRaffleStrategy(IStrategyRepository repository, IStrategyDispatch strategyDispatch) {
+ public AbstractRaffleStrategy(IStrategyRepository repository, IStrategyDispatch strategyDispatch, DefaultChainFactory defaultChainFactory) {
this.repository = repository;
this.strategyDispatch = strategyDispatch;
+ this.defaultChainFactory = defaultChainFactory;
}
@Override
@@ -42,37 +46,35 @@ public abstract class AbstractRaffleStrategy implements IRaffleStrategy {
throw new AppException(ResponseCode.ILLEGAL_PARAMETER.getCode(), ResponseCode.ILLEGAL_PARAMETER.getInfo());
}
- // 2. 策略查询
- StrategyEntity strategy = repository.queryStrategyEntityByStrategyId(strategyId);
+ // 2. 获取抽奖责任链 - 前置规则的责任链处理
+ ILogicChain logicChain = defaultChainFactory.openLogicChain(strategyId);
- // 3. 抽奖前 - 规则过滤
- RuleActionEntity ruleActionEntity = this.doCheckRaffleBeforeLogic(RaffleFactorEntity.builder().userId(userId).strategyId(strategyId).build(), strategy.ruleModels());
+ // 3. 通过责任链获得,奖品ID
+ Integer awardId = logicChain.logic(userId, strategyId);
- if (RuleLogicCheckTypeVO.TAKE_OVER.getCode().equals(ruleActionEntity.getCode())) {
- if (DefaultLogicFactory.LogicModel.RULE_BLACKLIST.getCode().equals(ruleActionEntity.getRuleModel())) {
- // 黑名单返回固定的奖品ID
- return RaffleAwardEntity.builder()
- .awardId(ruleActionEntity.getData().getAwardId())
- .build();
- } else if (DefaultLogicFactory.LogicModel.RULE_WIGHT.getCode().equals(ruleActionEntity.getRuleModel())) {
- // 权重根据返回的信息进行抽奖
- RuleActionEntity.RaffleBeforeEntity raffleBeforeEntity = ruleActionEntity.getData();
- String ruleWeightValueKey = raffleBeforeEntity.getRuleWeightValueKey();
- Integer awardId = strategyDispatch.getRandomAwardId(strategyId, ruleWeightValueKey);
- return RaffleAwardEntity.builder()
- .awardId(awardId)
- .build();
- }
- }
+ // 4. 查询奖品规则「抽奖中(拿到奖品ID时,过滤规则)、抽奖后(扣减完奖品库存后过滤,抽奖中拦截和无库存则走兜底)」
+ StrategyAwardRuleModelVO strategyAwardRuleModelVO = repository.queryStrategyAwardRuleModelVO(strategyId, awardId);
- // 4. 默认抽奖流程
- Integer awardId = strategyDispatch.getRandomAwardId(strategyId);
+ // 5. 抽奖中 - 规则过滤
+ RuleActionEntity ruleActionCenterEntity = this.doCheckRaffleCenterLogic(RaffleFactorEntity.builder()
+ .userId(userId)
+ .strategyId(strategyId)
+ .awardId(awardId)
+ .build(), strategyAwardRuleModelVO.raffleCenterRuleModelList());
+
+ if (RuleLogicCheckTypeVO.TAKE_OVER.getCode().equals(ruleActionCenterEntity.getCode())){
+ log.info("【临时日志】中奖中规则拦截,通过抽奖后规则 rule_luck_award 走兜底奖励。");
+ return RaffleAwardEntity.builder()
+ .awardDesc("中奖中规则拦截,通过抽奖后规则 rule_luck_award 走兜底奖励。")
+ .build();
+ }
return RaffleAwardEntity.builder()
.awardId(awardId)
.build();
}
- protected abstract RuleActionEntity doCheckRaffleBeforeLogic(RaffleFactorEntity raffleFactorEntity, String... logics);
+
+ protected abstract RuleActionEntity doCheckRaffleCenterLogic(RaffleFactorEntity raffleFactorEntity, String... logics);
}
diff --git a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/service/IRaffleStrategy.java b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/IRaffleStrategy.java
similarity index 91%
rename from xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/service/IRaffleStrategy.java
rename to xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/IRaffleStrategy.java
index ff78c44fac14b6db769cf27be7c60911388be4c1..c59010ba9a73b7450ce3dde52062a558f941dfae 100644
--- a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/service/IRaffleStrategy.java
+++ b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/IRaffleStrategy.java
@@ -1,4 +1,4 @@
-package cn.bugstack.domain.strategy.service;
+package cn.bugstack.domain.strategy;
import cn.bugstack.domain.strategy.model.entity.RaffleAwardEntity;
diff --git a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/entity/RaffleFactorEntity.java b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/entity/RaffleFactorEntity.java
index 4aac4301cfb7b3b74d9d7404c2f42128cc6a028c..800fa1926471f9201013af476da962f10c026101 100644
--- a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/entity/RaffleFactorEntity.java
+++ b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/entity/RaffleFactorEntity.java
@@ -21,5 +21,8 @@ public class RaffleFactorEntity {
private String userId;
/** 策略ID */
private Long strategyId;
+ /** 奖品ID */
+ private Integer awardId;
+
}
diff --git a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/entity/RuleActionEntity.java b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/entity/RuleActionEntity.java
index 8e40e95af63ba17e412c3cd412c40baf3215d778..ed48989603f3f438ae2512c33f7c61835f6e38c4 100644
--- a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/entity/RuleActionEntity.java
+++ b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/entity/RuleActionEntity.java
@@ -48,12 +48,50 @@ public class RuleActionEntity {
}
// 抽奖之中
+
+ @EqualsAndHashCode(callSuper = true)
+ @Data
+ @Builder
+ @AllArgsConstructor
+ @NoArgsConstructor
static public class RaffleCenterEntity extends RaffleEntity {
+ /**
+ * 策略ID
+ */
+ private Long strategyId;
+
+ /**
+ * 权重值Key;用于抽奖时可以选择权重抽奖。
+ */
+ private String ruleWeightValueKey;
+ /**
+ * 奖品ID;
+ */
+ private Integer awardId;
+
}
// 抽奖之后
+ @EqualsAndHashCode(callSuper = true)
+ @Data
+ @Builder
+ @AllArgsConstructor
+ @NoArgsConstructor
static public class RaffleAfterEntity extends RaffleEntity {
+ /**
+ * 策略ID
+ */
+ private Long strategyId;
+
+ /**
+ * 权重值Key;用于抽奖时可以选择权重抽奖。
+ */
+ private String ruleWeightValueKey;
+ /**
+ * 奖品ID;
+ */
+ private Integer awardId;
}
diff --git a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/valobj/RuleLogicCheckTypeVO.java b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/valobj/RuleLogicCheckTypeVO.java
index 7ec49c0c87bfe7dfb312f590d5b551178db261e2..e5bbecb3bf0b14e40d1377ce30ac93541689cc50 100644
--- a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/valobj/RuleLogicCheckTypeVO.java
+++ b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/valobj/RuleLogicCheckTypeVO.java
@@ -1,7 +1,9 @@
package cn.bugstack.domain.strategy.model.valobj;
import lombok.AllArgsConstructor;
+import lombok.Builder;
import lombok.Getter;
+import lombok.NoArgsConstructor;
/**
* @ClassName: RuleLogicCheckTypeVO
diff --git a/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/valobj/StrategyAwardRuleModelVO.java b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/valobj/StrategyAwardRuleModelVO.java
new file mode 100644
index 0000000000000000000000000000000000000000..f5f58909ac67252895712579890dd4e21e472c54
--- /dev/null
+++ b/xfg-frame-archetype-lite-domain/src/main/java/cn/bugstack/domain/strategy/model/valobj/StrategyAwardRuleModelVO.java
@@ -0,0 +1,60 @@
+package cn.bugstack.domain.strategy.model.valobj;
+
+import cn.bugstack.domain.strategy.service.rule.chain.factory.DefaultChainFactory;
+import cn.bugstack.domain.strategy.service.rule.filter.factory.DefaultLogicFactory;
+import cn.bugstack.types.common.Constants;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @ClassName: StrategyAwardRuleModelVO
+ * @Description:
+ * @Author: zhaoyongfeng
+ * @Date: 2024/11/18 20:39
+ */
+@Getter
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
+public class StrategyAwardRuleModelVO {
+ private String ruleModels;
+
+ /**
+ * 获取抽奖中规则;或者使用 lambda 表达式
+ *