Browse Source

增加用户登录相关接口

master
WendyYang 6 months ago
parent
commit
c2105dcbbf
74 changed files with 2510 additions and 2289 deletions
  1. +0
    -1
      .idea/dataSources.xml
  2. +10
    -0
      .idea/jarRepositories.xml
  3. +0
    -446
      kqapi/logs/error.log
  4. +0
    -92
      kqapi/logs/info-20231117-0.log
  5. +0
    -23
      kqapi/logs/info-20231122-0.log
  6. +0
    -80
      kqapi/logs/info.log
  7. +12
    -0
      kqapi/pom.xml
  8. +7
    -81
      kqapi/src/main/java/com/ningdatech/kqapi/common/constant/BizConst.java
  9. +30
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/common/enumeration/RoleEnum.java
  10. +7
    -2
      kqapi/src/main/java/com/ningdatech/kqapi/common/handler/GlobalExceptionHandler.java
  11. +0
    -82
      kqapi/src/main/java/com/ningdatech/kqapi/common/util/HmacAuthUtil.java
  12. +31
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/AuthBeanConfig.java
  13. +56
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/AuthProperties.java
  14. +91
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/WebSecurityConfig.java
  15. +54
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/config/RedisSessionConfig.java
  16. +29
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/constant/AuthConst.java
  17. +49
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/constant/AuthTypeEnum.java
  18. +28
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/constant/LoginPlatformEnum.java
  19. +58
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/facade/UserAuthLoginFacade.java
  20. +38
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/handler/DefaultExpiredSessionStrategy.java
  21. +35
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/handler/DefaultInvalidSessionStrategy.java
  22. +53
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/handler/DefaultLoginFailureHandler.java
  23. +42
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/handler/DefaultLoginSuccessHandler.java
  24. +35
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/handler/DefaultLogoutSuccessHandler.java
  25. +82
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/listener/AuthEventListener.java
  26. +69
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/model/UserInfoDetails.java
  27. +55
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/model/WebRequestDetails.java
  28. +20
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/model/dto/LoginDeviceInfoDTO.java
  29. +31
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/model/dto/UserInfoBO.java
  30. +42
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/password/PasswordAuthProvider.java
  31. +51
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/password/PasswordAuthSecurityConfig.java
  32. +45
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/password/PasswordLoginUserDetailService.java
  33. +57
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/password/UsernamePasswordAuthFilter.java
  34. +85
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/security/password/UsernamePasswordAuthToken.java
  35. +6
    -6
      kqapi/src/main/java/com/ningdatech/kqapi/sso/utils/HmacAuthUtil.java
  36. +77
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/controller/UserAuthController.java
  37. +99
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/controller/UserInfoController.java
  38. +33
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/helper/LoginHelper.java
  39. +23
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/helper/UserInfoHelper.java
  40. +248
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/manage/UserInfoManage.java
  41. +16
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/mapper/UserAuthMapper.java
  42. +5
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/mapper/UserAuthMapper.xml
  43. +16
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/mapper/UserInfoMapper.java
  44. +5
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/mapper/UserInfoMapper.xml
  45. +42
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/model/entity/UserAuth.java
  46. +69
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/model/entity/UserInfo.java
  47. +20
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/model/enumerization/AccountStatus.java
  48. +28
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/model/po/ChangeAccountStatusReq.java
  49. +31
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/model/po/ModifyPasswordReq.java
  50. +52
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/model/po/SaveUserReq.java
  51. +35
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/model/po/UserListReq.java
  52. +41
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/model/vo/ResUserListVO.java
  53. +32
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/model/vo/UserBasicInfoVO.java
  54. +48
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/model/vo/UserDetailVO.java
  55. +28
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/service/IUserAuthService.java
  56. +39
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/service/IUserInfoService.java
  57. +33
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/service/impl/UserAuthServiceImpl.java
  58. +22
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/service/impl/UserInfoServiceImpl.java
  59. +81
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/util/BizUtils.java
  60. +36
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/util/LoginUserContext.java
  61. +25
    -0
      kqapi/src/main/java/com/ningdatech/kqapi/user/util/LoginUserUtil.java
  62. +34
    -0
      kqapi/src/main/resources/security/auth-dev.yml
  63. +39
    -0
      kqapi/src/main/resources/security/auth-prod.yml
  64. +45
    -0
      kqapi/target/classes/META-INF/spring-configuration-metadata.json
  65. BIN
      kqapi/target/classes/com/ningdatech/kqapi/common/handler/GlobalExceptionHandler.class
  66. +0
    -42
      logs/error-20231031-0.log
  67. +0
    -73
      logs/error-20231102-0.log
  68. +0
    -388
      logs/error-20240103-0.log
  69. +0
    -643
      logs/error-20240104-0.log
  70. +0
    -134
      logs/error-20240402-0.log
  71. +0
    -45
      logs/error.log
  72. +0
    -29
      logs/info-20231122-0.log
  73. +0
    -69
      logs/info-20240112-0.log
  74. +0
    -53
      logs/info.log

+ 0
- 1
.idea/dataSources.xml View File

@@ -2,7 +2,6 @@
<project version="4">
<component name="DataSourceManagerImpl" format="xml" multifile-model="true">
<data-source source="LOCAL" name="kingbase" uuid="369d8e77-39f7-4c0f-8ddb-a2c2d7519420">
<driver-ref>java.sql.Driver</driver-ref>
<synchronize>true</synchronize>
<configured-by-url>true</configured-by-url>
<jdbc-driver>com.kingbase8.Driver</jdbc-driver>


+ 10
- 0
.idea/jarRepositories.xml View File

@@ -8,10 +8,20 @@
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Central Repository" />
<option name="url" value="http://maven.aliyun.com/nexus/content/repositories/central/" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="aliyun" />
<option name="name" value="aliyun" />
<option name="url" value="https://maven.aliyun.com/repository/public" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />


+ 0
- 446
kqapi/logs/error.log View File

@@ -1,446 +0,0 @@
2023-10-27 11:11:07.300 [main] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqController' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\controller\DscSxAdsShareItemQltQlsxCommonIDVKqController.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'matterManage' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\manage\MatterManage.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222)
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:144)
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:99)
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124)
at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)
at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:118)
at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83)
at org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener.prepareTestInstance(SpringBootDependencyInjectionTestExecutionListener.java:43)
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:235)
at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'matterManage' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\manage\MatterManage.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222)
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: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.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 47 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:659)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:639)
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399)
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.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 61 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1534)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1417)
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.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:656)
... 76 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541)
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: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.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1519)
... 87 common frames omitted
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
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: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.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 100 common frames omitted
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
... 114 common frames omitted
Caused by: java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.util.Assert.state(Assert.java:97)
at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:241)
at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:193)
at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:48)
at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:90)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
... 115 common frames omitted
2023-10-27 11:11:08.114 [main] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqController' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\controller\DscSxAdsShareItemQltQlsxCommonIDVKqController.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'matterManage' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\manage\MatterManage.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222)
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:144)
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:99)
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124)
at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)
at org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener.outputConditionEvaluationReport(SpringBootDependencyInjectionTestExecutionListener.java:53)
at org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener.prepareTestInstance(SpringBootDependencyInjectionTestExecutionListener.java:46)
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:235)
at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'matterManage' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\manage\MatterManage.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222)
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: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.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 46 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:659)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:639)
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399)
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.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 60 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1534)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1417)
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.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:656)
... 75 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541)
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: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.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1519)
... 86 common frames omitted
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
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: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.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 99 common frames omitted
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
... 113 common frames omitted
Caused by: java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.util.Assert.state(Assert.java:97)
at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:241)
at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:193)
at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:48)
at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:90)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
... 114 common frames omitted
2023-10-27 11:11:08.118 [main] ERROR o.s.test.context.TestContextManager -Caught exception while allowing TestExecutionListener [org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener@54504ecd] to prepare test instance [com.ningdatech.kqapi.menu.MenuTest@2ef14fe]
java.lang.IllegalStateException: Failed to load ApplicationContext
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:132)
at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)
at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:118)
at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83)
at org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener.prepareTestInstance(SpringBootDependencyInjectionTestExecutionListener.java:43)
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:235)
at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqController' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\controller\DscSxAdsShareItemQltQlsxCommonIDVKqController.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'matterManage' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\manage\MatterManage.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222)
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:144)
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:99)
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124)
... 28 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'matterManage' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\manage\MatterManage.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222)
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: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.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 47 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:659)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:639)
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399)
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.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 61 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dscSxAdsShareItemQltQlsxCommonIDVKqMapper' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\zzsfw\mapper\DscSxAdsShareItemQltQlsxCommonIDVKqMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1534)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1417)
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.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:656)
... 76 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541)
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: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.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1519)
... 87 common frames omitted
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
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: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.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
... 100 common frames omitted
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
... 114 common frames omitted
Caused by: java.lang.IllegalStateException: Cannot load driver class: com.kingbase8.Driver
at org.springframework.util.Assert.state(Assert.java:97)
at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:241)
at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:193)
at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:48)
at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:90)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
... 115 common frames omitted

+ 0
- 92
kqapi/logs/info-20231117-0.log View File

@@ -1,92 +0,0 @@
2023-11-17 10:49:40.856 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2023-11-17 10:49:40.871 [main] INFO c.n.kqapi.menu.DuplicationTest -Starting DuplicationTest using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 1660 (started by PoffyZhang in D:\ningda\kq-value-added-project\kqapi)
2023-11-17 10:49:40.872 [main] INFO c.n.kqapi.menu.DuplicationTest -The following 1 profile is active: "dev"
2023-11-17 10:49:43.409 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 0 (http)
2023-11-17 10:49:43.422 [main] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-auto-1"]
2023-11-17 10:49:43.422 [main] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2023-11-17 10:49:43.423 [main] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2023-11-17 10:49:43.548 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2023-11-17 10:49:43.548 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 2619 ms
2023-11-17 10:49:45.799 [main] INFO com.ningdatech.swagger.SwaggerConfig -swagger文档加载……
2023-11-17 10:49:46.978 [main] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2023-11-17 10:49:47.437 [main] INFO s.d.s.w.WebMvcPropertySourcedRequestMappingHandlerMapping -Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
2023-11-17 10:49:47.819 [main] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2023-11-17 10:49:48.370 [main] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-auto-1"]
2023-11-17 10:49:48.405 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 8882 (http) with context path '/kq'
2023-11-17 10:49:48.406 [main] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Documentation plugins bootstrapped
2023-11-17 10:49:48.412 [main] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Found 1 custom documentation plugin(s)
2023-11-17 10:49:48.459 [main] INFO s.d.s.w.s.ApiListingReferenceScanner -Scanning for api listing references
2023-11-17 10:49:48.662 [main] INFO c.n.kqapi.menu.DuplicationTest -Started DuplicationTest in 8.343 seconds (JVM running for 9.853)
2023-11-17 10:49:50.027 [main] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Starting...
2023-11-17 10:49:50.550 [main] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Start completed.
2023-11-17 10:50:09.079 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown initiated...
2023-11-17 10:50:09.088 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown completed.
2023-11-17 10:53:13.468 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2023-11-17 10:53:13.482 [main] INFO c.n.kqapi.menu.DuplicationTest -Starting DuplicationTest using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 25504 (started by PoffyZhang in D:\ningda\kq-value-added-project\kqapi)
2023-11-17 10:53:13.483 [main] INFO c.n.kqapi.menu.DuplicationTest -The following 1 profile is active: "dev"
2023-11-17 10:53:15.962 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 0 (http)
2023-11-17 10:53:15.973 [main] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-auto-1"]
2023-11-17 10:53:15.973 [main] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2023-11-17 10:53:15.973 [main] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2023-11-17 10:53:16.096 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2023-11-17 10:53:16.097 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 2552 ms
2023-11-17 10:53:18.302 [main] INFO com.ningdatech.swagger.SwaggerConfig -swagger文档加载……
2023-11-17 10:53:19.393 [main] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2023-11-17 10:53:19.765 [main] INFO s.d.s.w.WebMvcPropertySourcedRequestMappingHandlerMapping -Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
2023-11-17 10:53:19.992 [main] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2023-11-17 10:53:20.272 [main] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-auto-1"]
2023-11-17 10:53:20.303 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 9130 (http) with context path '/kq'
2023-11-17 10:53:20.304 [main] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Documentation plugins bootstrapped
2023-11-17 10:53:20.309 [main] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Found 1 custom documentation plugin(s)
2023-11-17 10:53:20.357 [main] INFO s.d.s.w.s.ApiListingReferenceScanner -Scanning for api listing references
2023-11-17 10:53:20.526 [main] INFO c.n.kqapi.menu.DuplicationTest -Started DuplicationTest in 7.616 seconds (JVM running for 8.671)
2023-11-17 10:53:21.705 [main] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Starting...
2023-11-17 10:53:22.183 [main] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Start completed.
2023-11-17 10:58:52.050 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown initiated...
2023-11-17 10:58:52.057 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown completed.
2023-11-17 11:21:22.316 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2023-11-17 11:21:22.329 [main] INFO c.n.kqapi.menu.DuplicationTest -Starting DuplicationTest using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 31264 (started by PoffyZhang in D:\ningda\kq-value-added-project\kqapi)
2023-11-17 11:21:22.329 [main] INFO c.n.kqapi.menu.DuplicationTest -The following 1 profile is active: "dev"
2023-11-17 11:21:24.781 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 0 (http)
2023-11-17 11:21:24.801 [main] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-auto-1"]
2023-11-17 11:21:24.802 [main] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2023-11-17 11:21:24.802 [main] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2023-11-17 11:21:24.953 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2023-11-17 11:21:24.954 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 2564 ms
2023-11-17 11:21:27.791 [main] INFO com.ningdatech.swagger.SwaggerConfig -swagger文档加载……
2023-11-17 11:21:28.932 [main] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2023-11-17 11:21:29.324 [main] INFO s.d.s.w.WebMvcPropertySourcedRequestMappingHandlerMapping -Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
2023-11-17 11:21:29.572 [main] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2023-11-17 11:21:29.847 [main] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-auto-1"]
2023-11-17 11:21:29.873 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 1891 (http) with context path '/kq'
2023-11-17 11:21:29.875 [main] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Documentation plugins bootstrapped
2023-11-17 11:21:29.879 [main] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Found 1 custom documentation plugin(s)
2023-11-17 11:21:29.915 [main] INFO s.d.s.w.s.ApiListingReferenceScanner -Scanning for api listing references
2023-11-17 11:21:30.057 [main] INFO c.n.kqapi.menu.DuplicationTest -Started DuplicationTest in 8.307 seconds (JVM running for 9.268)
2023-11-17 11:21:30.482 [main] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Starting...
2023-11-17 11:21:30.894 [main] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Start completed.
2023-11-17 11:21:34.814 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown initiated...
2023-11-17 11:21:34.821 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown completed.
2023-11-17 11:22:30.687 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2023-11-17 11:22:30.699 [main] INFO c.n.kqapi.menu.DuplicationTest -Starting DuplicationTest using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 33544 (started by PoffyZhang in D:\ningda\kq-value-added-project\kqapi)
2023-11-17 11:22:30.700 [main] INFO c.n.kqapi.menu.DuplicationTest -The following 1 profile is active: "dev"
2023-11-17 11:22:33.079 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 0 (http)
2023-11-17 11:22:33.094 [main] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-auto-1"]
2023-11-17 11:22:33.095 [main] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2023-11-17 11:22:33.096 [main] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2023-11-17 11:22:33.228 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2023-11-17 11:22:33.228 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 2476 ms
2023-11-17 11:22:35.478 [main] INFO com.ningdatech.swagger.SwaggerConfig -swagger文档加载……
2023-11-17 11:22:36.643 [main] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2023-11-17 11:22:37.045 [main] INFO s.d.s.w.WebMvcPropertySourcedRequestMappingHandlerMapping -Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
2023-11-17 11:22:37.263 [main] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2023-11-17 11:22:37.506 [main] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-auto-1"]
2023-11-17 11:22:37.532 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 1929 (http) with context path '/kq'
2023-11-17 11:22:37.533 [main] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Documentation plugins bootstrapped
2023-11-17 11:22:37.536 [main] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Found 1 custom documentation plugin(s)
2023-11-17 11:22:37.572 [main] INFO s.d.s.w.s.ApiListingReferenceScanner -Scanning for api listing references
2023-11-17 11:22:37.707 [main] INFO c.n.kqapi.menu.DuplicationTest -Started DuplicationTest in 7.587 seconds (JVM running for 8.526)
2023-11-17 11:22:38.105 [main] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Starting...
2023-11-17 11:22:38.584 [main] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Start completed.
2023-11-17 11:23:16.073 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown initiated...
2023-11-17 11:23:16.081 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown completed.

+ 0
- 23
kqapi/logs/info-20231122-0.log View File

@@ -1,23 +0,0 @@
2023-11-22 16:34:54.722 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2023-11-22 16:34:54.736 [main] INFO c.n.kqapi.menu.DuplicationTest -Starting DuplicationTest using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 7560 (started by PoffyZhang in D:\ningda\kq-value-added-project\kqapi)
2023-11-22 16:34:54.736 [main] INFO c.n.kqapi.menu.DuplicationTest -The following 1 profile is active: "dev"
2023-11-22 16:34:57.112 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 0 (http)
2023-11-22 16:34:57.123 [main] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-auto-1"]
2023-11-22 16:34:57.124 [main] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2023-11-22 16:34:57.124 [main] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2023-11-22 16:34:57.241 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2023-11-22 16:34:57.241 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 2454 ms
2023-11-22 16:34:59.543 [main] INFO com.ningdatech.swagger.SwaggerConfig -swagger文档加载……
2023-11-22 16:35:00.675 [main] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2023-11-22 16:35:01.087 [main] INFO s.d.s.w.WebMvcPropertySourcedRequestMappingHandlerMapping -Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
2023-11-22 16:35:01.309 [main] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2023-11-22 16:35:01.562 [main] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-auto-1"]
2023-11-22 16:35:01.588 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 32509 (http) with context path '/kq'
2023-11-22 16:35:01.589 [main] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Documentation plugins bootstrapped
2023-11-22 16:35:01.592 [main] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Found 1 custom documentation plugin(s)
2023-11-22 16:35:01.629 [main] INFO s.d.s.w.s.ApiListingReferenceScanner -Scanning for api listing references
2023-11-22 16:35:01.772 [main] INFO c.n.kqapi.menu.DuplicationTest -Started DuplicationTest in 7.554 seconds (JVM running for 8.94)
2023-11-22 16:35:02.189 [main] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Starting...
2023-11-22 16:35:02.677 [main] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Start completed.
2023-11-22 16:35:46.625 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown initiated...
2023-11-22 16:35:46.634 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown completed.

+ 0
- 80
kqapi/logs/info.log View File

@@ -1,80 +0,0 @@
2024-04-07 11:40:43.103 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2024-04-07 11:40:43.116 [main] INFO com.ningdatech.kqapi.menu.MenuTest -Starting MenuTest using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 27140 (started by PoffyZhang in D:\ningda\kq-value-added-project\kqapi)
2024-04-07 11:40:43.117 [main] INFO com.ningdatech.kqapi.menu.MenuTest -The following 1 profile is active: "prod"
2024-04-07 11:40:44.149 [main] INFO c.u.j.c.EnableEncryptablePropertiesBeanFactoryPostProcessor -Post-processing PropertySource instances
2024-04-07 11:40:44.150 [main] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource configurationProperties [class org.springframework.boot.context.properties.source.ConfigurationPropertySourcesPropertySource
2024-04-07 11:40:44.153 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource test [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 11:40:44.153 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource Inlined Test Properties [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 11:40:44.153 [main] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource servletConfigInitParams [class org.springframework.core.env.PropertySource$StubPropertySource
2024-04-07 11:40:44.153 [main] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource servletContextInitParams [class org.springframework.core.env.PropertySource$StubPropertySource
2024-04-07 11:40:44.153 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource systemProperties [org.springframework.core.env.PropertiesPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 11:40:44.154 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource systemEnvironment [org.springframework.boot.env.SystemEnvironmentPropertySourceEnvironmentPostProcessor$OriginAwareSystemEnvironmentPropertySource] to EncryptableSystemEnvironmentPropertySourceWrapper
2024-04-07 11:40:44.154 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource random [org.springframework.boot.env.RandomValuePropertySource] to EncryptablePropertySourceWrapper
2024-04-07 11:40:44.154 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource Config resource 'class path resource [application-prod.yml]' via location 'optional:classpath:/' [org.springframework.boot.env.OriginTrackedMapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 11:40:44.154 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource Config resource 'class path resource [application.yml]' via location 'optional:classpath:/' [org.springframework.boot.env.OriginTrackedMapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 11:40:44.439 [main] INFO c.u.j.f.DefaultLazyPropertyFilter -Property Filter custom Bean not found with name 'encryptablePropertyFilter'. Initializing Default Property Filter
2024-04-07 11:40:44.449 [main] INFO c.u.j.r.DefaultLazyPropertyResolver -Property Resolver custom Bean not found with name 'encryptablePropertyResolver'. Initializing Default Property Resolver
2024-04-07 11:40:44.453 [main] INFO c.u.j.d.DefaultLazyPropertyDetector -Property Detector custom Bean not found with name 'encryptablePropertyDetector'. Initializing Default Property Detector
2024-04-07 11:40:45.294 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 0 (http)
2024-04-07 11:40:45.306 [main] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-auto-1"]
2024-04-07 11:40:45.307 [main] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2024-04-07 11:40:45.307 [main] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2024-04-07 11:40:45.441 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2024-04-07 11:40:45.442 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 2275 ms
2024-04-07 11:40:47.784 [main] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2024-04-07 11:40:48.621 [main] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2024-04-07 11:40:48.832 [main] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-auto-1"]
2024-04-07 11:40:48.855 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 9629 (http) with context path '/kq'
2024-04-07 11:40:48.856 [main] INFO c.u.j.c.RefreshScopeRefreshedEventListener -Refreshing cached encryptable property sources on ServletWebServerInitializedEvent
2024-04-07 11:40:48.856 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source test refreshed
2024-04-07 11:40:48.857 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source Inlined Test Properties refreshed
2024-04-07 11:40:48.857 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source systemProperties refreshed
2024-04-07 11:40:48.857 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source systemEnvironment refreshed
2024-04-07 11:40:48.857 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source random refreshed
2024-04-07 11:40:48.857 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source Config resource 'class path resource [application-prod.yml]' via location 'optional:classpath:/' refreshed
2024-04-07 11:40:48.857 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source Config resource 'class path resource [application.yml]' via location 'optional:classpath:/' refreshed
2024-04-07 11:40:48.857 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource server.ports [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 11:40:48.857 [main] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource configurationProperties [class org.springframework.boot.context.properties.source.ConfigurationPropertySourcesPropertySource
2024-04-07 11:40:48.857 [main] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource servletConfigInitParams [class org.springframework.core.env.PropertySource$StubPropertySource
2024-04-07 11:40:48.857 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource servletContextInitParams [org.springframework.web.context.support.ServletContextPropertySource] to EncryptableEnumerablePropertySourceWrapper
2024-04-07 11:40:48.869 [main] INFO com.ningdatech.kqapi.menu.MenuTest -Started MenuTest in 6.275 seconds (JVM running for 7.573)
2024-04-07 13:43:39.929 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2024-04-07 13:43:39.939 [main] INFO com.ningdatech.kqapi.menu.MenuTest -Starting MenuTest using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 13556 (started by PoffyZhang in D:\ningda\kq-value-added-project\kqapi)
2024-04-07 13:43:39.939 [main] INFO com.ningdatech.kqapi.menu.MenuTest -The following 1 profile is active: "prod"
2024-04-07 13:43:40.838 [main] INFO c.u.j.c.EnableEncryptablePropertiesBeanFactoryPostProcessor -Post-processing PropertySource instances
2024-04-07 13:43:40.839 [main] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource configurationProperties [class org.springframework.boot.context.properties.source.ConfigurationPropertySourcesPropertySource
2024-04-07 13:43:40.841 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource test [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 13:43:40.841 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource Inlined Test Properties [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 13:43:40.841 [main] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource servletConfigInitParams [class org.springframework.core.env.PropertySource$StubPropertySource
2024-04-07 13:43:40.841 [main] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource servletContextInitParams [class org.springframework.core.env.PropertySource$StubPropertySource
2024-04-07 13:43:40.842 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource systemProperties [org.springframework.core.env.PropertiesPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 13:43:40.842 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource systemEnvironment [org.springframework.boot.env.SystemEnvironmentPropertySourceEnvironmentPostProcessor$OriginAwareSystemEnvironmentPropertySource] to EncryptableSystemEnvironmentPropertySourceWrapper
2024-04-07 13:43:40.842 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource random [org.springframework.boot.env.RandomValuePropertySource] to EncryptablePropertySourceWrapper
2024-04-07 13:43:40.842 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource Config resource 'class path resource [application-prod.yml]' via location 'optional:classpath:/' [org.springframework.boot.env.OriginTrackedMapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 13:43:40.842 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource Config resource 'class path resource [application.yml]' via location 'optional:classpath:/' [org.springframework.boot.env.OriginTrackedMapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 13:43:41.106 [main] INFO c.u.j.f.DefaultLazyPropertyFilter -Property Filter custom Bean not found with name 'encryptablePropertyFilter'. Initializing Default Property Filter
2024-04-07 13:43:41.116 [main] INFO c.u.j.r.DefaultLazyPropertyResolver -Property Resolver custom Bean not found with name 'encryptablePropertyResolver'. Initializing Default Property Resolver
2024-04-07 13:43:41.119 [main] INFO c.u.j.d.DefaultLazyPropertyDetector -Property Detector custom Bean not found with name 'encryptablePropertyDetector'. Initializing Default Property Detector
2024-04-07 13:43:41.994 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 0 (http)
2024-04-07 13:43:42.006 [main] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-auto-1"]
2024-04-07 13:43:42.006 [main] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2024-04-07 13:43:42.007 [main] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2024-04-07 13:43:42.143 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2024-04-07 13:43:42.143 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 2157 ms
2024-04-07 13:43:44.513 [main] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2024-04-07 13:43:45.402 [main] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2024-04-07 13:43:45.676 [main] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-auto-1"]
2024-04-07 13:43:45.697 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 2307 (http) with context path '/kq'
2024-04-07 13:43:45.699 [main] INFO c.u.j.c.RefreshScopeRefreshedEventListener -Refreshing cached encryptable property sources on ServletWebServerInitializedEvent
2024-04-07 13:43:45.699 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source test refreshed
2024-04-07 13:43:45.699 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source Inlined Test Properties refreshed
2024-04-07 13:43:45.699 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source systemProperties refreshed
2024-04-07 13:43:45.699 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source systemEnvironment refreshed
2024-04-07 13:43:45.700 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source random refreshed
2024-04-07 13:43:45.700 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source Config resource 'class path resource [application-prod.yml]' via location 'optional:classpath:/' refreshed
2024-04-07 13:43:45.700 [main] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source Config resource 'class path resource [application.yml]' via location 'optional:classpath:/' refreshed
2024-04-07 13:43:45.700 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource server.ports [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-07 13:43:45.700 [main] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource configurationProperties [class org.springframework.boot.context.properties.source.ConfigurationPropertySourcesPropertySource
2024-04-07 13:43:45.700 [main] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource servletConfigInitParams [class org.springframework.core.env.PropertySource$StubPropertySource
2024-04-07 13:43:45.700 [main] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource servletContextInitParams [org.springframework.web.context.support.ServletContextPropertySource] to EncryptableEnumerablePropertySourceWrapper
2024-04-07 13:43:45.710 [main] INFO com.ningdatech.kqapi.menu.MenuTest -Started MenuTest in 6.296 seconds (JVM running for 7.144)

+ 12
- 0
kqapi/pom.xml View File

@@ -140,6 +140,18 @@
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>3.0.4</version>
</dependency>
<dependency>
<groupId>com.ningdatech</groupId>
<artifactId>nd-log-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-redis</artifactId>
</dependency>
</dependencies>
<!-- 打包 -->
<!--配置环境的profile-->


+ 7
- 81
kqapi/src/main/java/com/ningdatech/kqapi/common/constant/BizConst.java View File

@@ -2,8 +2,6 @@ package com.ningdatech.kqapi.common.constant;

import com.ningdatech.kqapi.common.model.ApiResponse;

import java.math.BigDecimal;

/**
* <p>
* 业务常量
@@ -12,97 +10,25 @@ import java.math.BigDecimal;
* @author WendyYang
* @since 13:42 2022/12/1
*/
public interface BizConst {
public class BizConst {

/**
* SQL查询一条
*/
String LIMIT_1 = "limit 1";

String COOKIE_KEY = "ND_PROJECT_MANAGEMENT_JSESSION";

/**
* 一小时秒数
**/
BigDecimal SECONDS_BY_HOUR = new BigDecimal(60 * 60);

/**
* 十分钟的毫秒数
*/
long MILLS_10_MIN = 1000L * 60 * 10;

/**
* 中国行政区划编码
*/
long ROOT_REGION_CODE = 100000L;

/**
* 一级行政区划数量
*/
int NUM_PROVINCE = 34;

/**
* 默认的父id
*/
long PARENT_ID = 0L;

/**
* 默认树层级
*/
int TREE_GRADE = 0;
public static final String LIMIT_1 = "limit 1";

/**
* 默认的排序
*/
int SORT_VALUE = 0;
public static final String COOKIE_KEY = "KQ_ZZSFW";

/**
* 浙江省的region_id
*/
long ZJ_REGION_CODE = 330000L;
String NINE_AREA_CODE_LAST = "000";

/**
* 省/直辖市 level
*/
int GOV_L1 = 1;

/**
* 市 level
*/
int GOV_L2 = 2;

/**
* 区/县 level
*/
int GOV_L3 = 3;

/**
* 密码正则:长度8-20位且至少包含大写字母、小写字母、数字或特殊符号中的任意三种
*/
String REGEX_PASS = "^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\\W_]+$)(?![a-z0-9]+$)(?![a-z\\W_]+$)(?![0-9\\W_]+$)[a-zA-Z0-9\\W_]{8,20}$";

ApiResponse<Void> UNAUTHENTICATED = ApiResponse.of(401, "用户未登录", null);

int MAX_EXPORT_COUNT = 5000;
public static final String REGEX_PASS = "^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\\W_]+$)(?![a-z0-9]+$)(?![a-z\\W_]+$)(?![0-9\\W_]+$)[a-zA-Z0-9\\W_]{8,20}$";

String RESPONSE_KEY_DATA = "data";
String RESPONSE_KEY_ID = "id";
String RESPONSE_KEY_DING_CODE = "dingCode";
String RESPONSE_KEY_MATTER_NAME = "matterName";
String RESPONSE_KEY_ORG_NAME = "orgName";
String RESPONSE_KEY_USER_STATE = "userState";
public static final String JSON_UTF8 = "application/json;charset=UTF-8";

String RESPONSE_KEY_AREA_NAME = "areaName";
String ORG_NAME = "organizationName";
String ORG_CODE = "organizationCode";
public static final ApiResponse<Void> SESSION_EXPIRE = ApiResponse.of(401, "登录已超时,请重新登陆!");

String DEV = "dev";
String PRE = "pre";
String PROD = "prod";
public static final ApiResponse<Void> UNAUTHENTICATED = ApiResponse.of(401, "用户未登录!");

String SAVE_SUCCESS = "保存成功";
String OP_SUCCESS = "操作成功";
String OP_FAIL = "操作失败";
String SAVE_FAIL = "保存失败";
}

+ 30
- 0
kqapi/src/main/java/com/ningdatech/kqapi/common/enumeration/RoleEnum.java View File

@@ -0,0 +1,30 @@
package com.ningdatech.kqapi.common.enumeration;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
* @author liuxinxin
* @date 2022/11/23 下午4:32
* 系统角色
*/
@Getter
@AllArgsConstructor
public enum RoleEnum {

engineer("工程师"),
project_manager("项目经理"),
project_leader("项目负责人"),
enterprise_admin("企业管理员"),
regional_general_manager("地区总经理"),
driver("驾驶员"),
super_admin("超级管理员"),
driver_admin("车管员");

private final String displayName;

public boolean eq(String name) {
return this.name().equals(name);
}

}

+ 7
- 2
kqapi/src/main/java/com/ningdatech/kqapi/common/handler/GlobalExceptionHandler.java View File

@@ -1,5 +1,6 @@
package com.ningdatech.kqapi.common.handler;

import com.ningdatech.kqapi.common.exception.BizException;
import com.ningdatech.kqapi.common.model.ApiResponse;
import com.ningdatech.kqapi.common.model.Status;
import lombok.extern.slf4j.Slf4j;
@@ -30,7 +31,6 @@ public class GlobalExceptionHandler {
@ResponseBody
@ExceptionHandler(value = NoHandlerFoundException.class)
public ApiResponse<Void> noHandlerFoundException(NoHandlerFoundException e) {
log.error("【全局异常拦截】NoHandlerFoundException: 请求方法 {}, 请求路径 {}", e.getRequestURL(), e.getHttpMethod());
return ApiResponse.ofStatus(Status.REQUEST_NOT_FOUND);
}

@@ -55,7 +55,12 @@ public class GlobalExceptionHandler {
@ResponseBody
@ExceptionHandler(value = Exception.class)
public ApiResponse<Void> handlerException(Exception e) {
log.error("【全局异常拦截】: 异常信息 {}: {} ", e.getClass().getSimpleName(), e);
return ApiResponse.of(Status.BAD_REQUEST.getCode(), e.getMessage(), null);
}

@ResponseBody
@ExceptionHandler(value = BizException.class)
public ApiResponse<Void> bizException(Exception e) {
return ApiResponse.of(Status.BAD_REQUEST.getCode(), e.getMessage(), null);
}



+ 0
- 82
kqapi/src/main/java/com/ningdatech/kqapi/common/util/HmacAuthUtil.java View File

@@ -1,82 +0,0 @@
package com.ningdatech.kqapi.common.util;

import org.apache.commons.math3.util.Pair;

import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
import javax.xml.bind.DatatypeConverter;
import java.io.UnsupportedEncodingException;
import java.net.URI;
import java.net.URLEncoder;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;

public class HmacAuthUtil {
/**
* 构造http请求 header
*
* @param url 请求url,全路径格式,比如:https://bcdsg.zj.gov.cn/api/p/v1/user.get
* @param requestMethod 请求方法,大写格式,如:GET, POST
* @param accessKey 应用的 AK
* @param secretKey 应用的 SK
* @return
*/
public static Map<String, String> generateHeader(String url, String requestMethod, String accessKey, String secretKey) {
Map<String, String> header = new HashMap<>();
try {
DateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);
dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
String date = dateFormat.format(new Date());
URI uri = URI.create(url);
String canonicalQueryString = getCanonicalQueryString(uri.getQuery());
String message = requestMethod.toUpperCase() + "\n" + uri.getPath() + "\n" + canonicalQueryString + "\n" + accessKey + "\n" + date + "\n";
Mac mac = Mac.getInstance("HmacSHA256");
mac.init(new SecretKeySpec(secretKey.getBytes(), "HmacSHA256"));
byte[] hash = mac.doFinal(message.getBytes());
// to lowercase hexits
DatatypeConverter.printHexBinary(hash);
// to base64
String sign = DatatypeConverter.printBase64Binary(hash);
header.put("X-BG-HMAC-SIGNATURE", sign);
header.put("X-BG-HMAC-ALGORITHM", "hmac-sha256");
header.put("X-BG-HMAC-ACCESS-KEY", accessKey);
header.put("X-BG-DATE-TIME", date);
System.out.println(date);
} catch (Exception e) {
throw new RuntimeException("generate jc brain header error", e);
}
return header;
}

private static String getCanonicalQueryString(String query) {
if (query == null || query.trim().length() == 0) {
return "";
}
List<Pair<String, String>> queryParamList = new ArrayList<>();
String[] params = query.split("&");
for (String param : params) {
String[] keyValue = param.split("=");
Pair<String, String> pair = new Pair<String, String>(keyValue[0], keyValue.length > 1 ? keyValue[1] : "");
queryParamList.add(pair);
}
List<Pair<String, String>> sortedParamList = queryParamList.stream().sorted(Comparator.comparing(param -> param.getKey() + "=" + Optional.ofNullable(param.getValue()).orElse(""))).collect(Collectors.toList());
List<Pair<String, String>> encodeParamList = new ArrayList<>();
sortedParamList.stream().forEach(param -> {
try {
String key = URLEncoder.encode(param.getKey(), "utf-8");
String value = URLEncoder.encode(Optional.ofNullable(param.getValue()).orElse(""), "utf-8");
encodeParamList.add(new Pair<>(key, value));
} catch (UnsupportedEncodingException e) {
throw new RuntimeException("encoding error");
}
});
StringBuilder queryParamString = new StringBuilder(64);
for (Pair<String, String> encodeParam : encodeParamList) {
queryParamString.append(encodeParam.getKey()).append("=").append(Optional.ofNullable(encodeParam.getValue()).orElse(""));
queryParamString.append("&");
}
return queryParamString.substring(0, queryParamString.length() - 1);
}
}

+ 31
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/AuthBeanConfig.java View File

@@ -0,0 +1,31 @@
package com.ningdatech.kqapi.security;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.core.session.SessionRegistry;
import org.springframework.security.core.session.SessionRegistryImpl;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;

/**
* <p>
* AuthBeanConfig
* </p>
*
* @author WendyYang
* @since 11:23 2024/4/20
*/
@Configuration
public class AuthBeanConfig {

@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}

@Bean
public SessionRegistry sessionRegistry() {
return new SessionRegistryImpl();
}

}

+ 56
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/AuthProperties.java View File

@@ -0,0 +1,56 @@
package com.ningdatech.kqapi.security;

import com.ningdatech.basic.factory.PropertySourceFactory;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
* <p>
* AuthProperties
* </p>
*
* @author WendyYang
* @since 11:15 2024/4/20
*/
@Configuration
@PropertySource(value = "classpath:security/auth-${spring.profiles.active}.yml"
, encoding = "utf-8", factory = PropertySourceFactory.class)
@ConfigurationProperties(prefix = "security.auth")
@Component
@Data
public class AuthProperties {

private Boolean postOnlyByLogin = true;

private String authRequireUrl;

private String invalidSessionUrl;

private String passwordLoginUrl;

private String logoutUrl;

private List<String> ignoreAuthUrls;

private List<String> ignoreCsrfUrls;

private Map<String, List<String>> roleMap = new HashMap<>();

public String[] getIgnoreAuthUrlsArray() {
String[] stringArray = new String[ignoreAuthUrls.size()];
return ignoreAuthUrls.toArray(stringArray);
}

public String[] getIgnoreCsrfUrlsArray() {
String[] stringArray = new String[ignoreCsrfUrls.size()];
return ignoreCsrfUrls.toArray(stringArray);
}

}

+ 91
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/WebSecurityConfig.java View File

@@ -0,0 +1,91 @@
package com.ningdatech.kqapi.security;

import com.ningdatech.basic.util.NdJsonUtil;
import com.ningdatech.basic.util.StrPool;
import com.ningdatech.kqapi.common.constant.BizConst;
import com.ningdatech.kqapi.security.handler.DefaultExpiredSessionStrategy;
import com.ningdatech.kqapi.security.handler.DefaultInvalidSessionStrategy;
import com.ningdatech.kqapi.security.password.PasswordAuthSecurityConfig;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.HttpStatus;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.web.AuthenticationEntryPoint;
import org.springframework.security.web.authentication.logout.LogoutSuccessHandler;
import org.springframework.security.web.csrf.CookieCsrfTokenRepository;

import java.io.PrintWriter;

/**
* <p>
* WebSecurityConfig
* </p>
*
* @author WendyYang
* @since 11:07 2024/4/20
*/
@Configuration
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {

private final AuthProperties authProperties;
private final PasswordAuthSecurityConfig passwordAuthSecurityConfig;
private final LogoutSuccessHandler logoutSuccessHandler;
private final DefaultExpiredSessionStrategy expiredSessionStrategy;
private final DefaultInvalidSessionStrategy invalidSessionStrategy;

public WebSecurityConfig(AuthProperties authProperties,
PasswordAuthSecurityConfig passwordAuthSecurityConfig,
LogoutSuccessHandler logoutSuccessHandler,
DefaultExpiredSessionStrategy expiredSessionStrategy,
DefaultInvalidSessionStrategy invalidSessionStrategy) {
this.authProperties = authProperties;
this.passwordAuthSecurityConfig = passwordAuthSecurityConfig;
this.logoutSuccessHandler = logoutSuccessHandler;
this.expiredSessionStrategy = expiredSessionStrategy;
this.invalidSessionStrategy = invalidSessionStrategy;
}

@Override
protected void configure(HttpSecurity http) throws Exception {
http.formLogin()
.and()
.exceptionHandling()
.authenticationEntryPoint(authenticationEntryPoint())
.and().apply(passwordAuthSecurityConfig)
.and()
.authorizeRequests()
.antMatchers(authProperties.getIgnoreAuthUrlsArray()).permitAll()
.anyRequest()
.authenticated()
.and()
// 防止固定会话攻击,Spring security的默认配置就是如此:
// 登陆成功之后会创建一个新的会话,然后将旧的session信息复制到新的session中(客户端的sessionId变了)
.sessionManagement()
.invalidSessionStrategy(invalidSessionStrategy)
.sessionFixation()
.migrateSession()
// .invalidSessionStrategy(defaultInvalidSessionStrategy)
.maximumSessions(3)
.maxSessionsPreventsLogin(true)
.expiredSessionStrategy(expiredSessionStrategy)
.and().and().logout().logoutUrl(authProperties.getLogoutUrl())
.logoutSuccessHandler(logoutSuccessHandler)
.deleteCookies(BizConst.COOKIE_KEY)
.and()
// 开启csrf验证,需要前端同步传入token
.csrf().csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())
.ignoringAntMatchers(authProperties.getIgnoreCsrfUrlsArray());
}

private AuthenticationEntryPoint authenticationEntryPoint() {
return (request, response, authException) -> {
response.setContentType(StrPool.CONTENT_TYPE);
response.setStatus(HttpStatus.UNAUTHORIZED.value());
PrintWriter writer = response.getWriter();
writer.write(NdJsonUtil.getInstance().writeValueAsString(BizConst.UNAUTHENTICATED));
writer.flush();
writer.close();
};
}

}

+ 54
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/config/RedisSessionConfig.java View File

@@ -0,0 +1,54 @@
package com.ningdatech.kqapi.security.config;

import cn.hutool.core.util.StrUtil;
import com.ningdatech.basic.util.StrPool;
import com.ningdatech.kqapi.common.constant.BizConst;
import com.ningdatech.kqapi.security.constant.AuthConst;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.session.data.redis.RedisIndexedSessionRepository;
import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
import org.springframework.session.web.http.CookieHttpSessionIdResolver;
import org.springframework.session.web.http.DefaultCookieSerializer;

/**
* <p>
* 设置session的过期时间为一天
* </p>
*
* @author WendyYang
* @since 00:22 2023/3/2
*/
@Configuration
@EnableRedisHttpSession(
maxInactiveIntervalInSeconds = RedisSessionConfig.SESSION_TIMEOUT,
redisNamespace = RedisSessionConfig.REDIS_NAMESPACE
)
public class RedisSessionConfig {

static final int SESSION_TIMEOUT = 60 * 60 * 24;

static final String REDIS_NAMESPACE = "#{redisSessionConfig.getRedisNamespace()}";

@Value("${nd.cache.def.keyPrefix:}")
private String keyPrefix;

public String getRedisNamespace() {
return (StrUtil.isBlank(keyPrefix) ? StrPool.EMPTY : keyPrefix + StrPool.COLON) + RedisIndexedSessionRepository.DEFAULT_NAMESPACE;
}

@Bean
public CookieHttpSessionIdResolver sessionIdResolver() {
// 创建 CookieHttpSessionIdResolver 对象
CookieHttpSessionIdResolver sessionIdResolver = new CookieHttpSessionIdResolver();
// 创建 DefaultCookieSerializer 对象
DefaultCookieSerializer cookieSerializer = new DefaultCookieSerializer();
cookieSerializer.setCookieName(BizConst.COOKIE_KEY);
cookieSerializer.setCookieMaxAge(AuthConst.SESSION_TIME_SECONDS);
// 设置到 sessionIdResolver 中
sessionIdResolver.setCookieSerializer(cookieSerializer);
return sessionIdResolver;
}

}

+ 29
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/constant/AuthConst.java View File

@@ -0,0 +1,29 @@
package com.ningdatech.kqapi.security.constant;

/**
* <p>
* 授权相关常量
* </p>
*
* @author WendyYang
* @since 2023/9/1
**/
public class AuthConst {

private AuthConst() {
}

public static final Integer SESSION_TIME_SECONDS = 24 * 60 * 60 * 10;
public static final Integer SESSION_EXPIRED = 0;

public static final String USERNAME = "username";

public static final String PASSWORD = "password";

public static final String LOGIN_PLATFORM = "loginPlatform";

public static final String DEVICE_MODEL = "deviceModel";

public static final String OPEN_ID = "openId";

}

+ 49
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/constant/AuthTypeEnum.java View File

@@ -0,0 +1,49 @@
package com.ningdatech.kqapi.security.constant;

import lombok.Getter;

/**
* @author LiuXinXin
* @date 2021/7/30 下午2:10
*/
@Getter
public enum AuthTypeEnum {

/**
* 手机 + 密码的认证方式
*/
PHONE_PASSWORD("phone_password"),

/**
* 子账号 账号 + 密码的认证方式
*/
ACCOUNT_PASSWORD("account_password");

private final String key;

AuthTypeEnum(String key) {
this.key = key;
}

public static boolean contains(String key) {
for (AuthTypeEnum value : AuthTypeEnum.values()) {
if (key.equals(value.getKey())) {
return true;
}
}
return false;
}

public String getKey() {
return key;
}

public static AuthTypeEnum of(String key) {
for (AuthTypeEnum value : AuthTypeEnum.values()) {
if (key.equals(value.getKey())) {
return value;
}
}
throw new IllegalArgumentException(String.format("无效的AuthTypeEnum:%s", key));
}
}

+ 28
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/constant/LoginPlatformEnum.java View File

@@ -0,0 +1,28 @@
package com.ningdatech.kqapi.security.constant;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
* @author liuxinxin
* @date 2022/11/24 下午5:45
* 登陆平台
*/
@Getter
@AllArgsConstructor
public enum LoginPlatformEnum {

// PC 端
PC_PLATFORM,

// 驾驶员端
DRIVER_PLATFORM,

// 企业端
ENTERPRISE_PLATFORM;

public boolean eq(String platform) {
return this.name().equals(platform);
}

}

+ 58
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/facade/UserAuthLoginFacade.java View File

@@ -0,0 +1,58 @@
package com.ningdatech.kqapi.security.facade;

import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ningdatech.kqapi.common.constant.BizConst;
import com.ningdatech.kqapi.security.constant.AuthTypeEnum;
import com.ningdatech.kqapi.user.model.entity.UserAuth;
import com.ningdatech.kqapi.user.model.entity.UserInfo;
import com.ningdatech.kqapi.security.model.dto.UserInfoBO;
import com.ningdatech.kqapi.user.service.IUserAuthService;
import com.ningdatech.kqapi.user.service.IUserInfoService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Component;

import java.util.Arrays;
import java.util.List;
import java.util.Objects;

/**
* <p>
* UserAuthLoginFacade
* </p>
*
* @author WendyYang
* @since 10:14 2024/4/20
*/
@Component
@RequiredArgsConstructor
public class UserAuthLoginFacade {

private final IUserAuthService userAuthService;
private final IUserInfoService userInfoService;

private static final List<String> AUTH_TYPES = Arrays.asList(AuthTypeEnum.ACCOUNT_PASSWORD.getKey(),
AuthTypeEnum.PHONE_PASSWORD.getKey());


public UserInfoBO queryUserInfoInPasswordAuth(String username) {
// 获取用户鉴权信息
UserAuth userAuth = userAuthService.getOne(Wrappers.lambdaQuery(UserAuth.class)
.eq(UserAuth::getIdentifier, username)
.in(UserAuth::getAuthType, AUTH_TYPES)
.last(BizConst.LIMIT_1));
if (Objects.isNull(userAuth)) {
return null;
}
// 获取用户详情信息
UserInfo userInfo = userInfoService.getById(userAuth.getUserId());
UserInfoBO user = new UserInfoBO();
user.setAccountStatus(userInfo.getAccountStatus());
user.setUserId(userInfo.getId());
user.setRealName(userInfo.getRealName());
user.setUsername(userInfo.getUsername());
user.setRole(userInfo.getRole());
user.setIdentifier(userAuth.getIdentifier());
user.setCredential(userAuth.getCredential());
return user;
}
}

+ 38
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/handler/DefaultExpiredSessionStrategy.java View File

@@ -0,0 +1,38 @@
package com.ningdatech.kqapi.security.handler;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.ningdatech.kqapi.common.constant.BizConst;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.web.session.SessionInformationExpiredEvent;
import org.springframework.security.web.session.SessionInformationExpiredStrategy;
import org.springframework.stereotype.Component;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
* <p>
* DefaultExpiredSessionStrategy
* </p>
*
* @author WendyYang
* @since 11:33 2024/4/20
*/
@Slf4j
@Component
public class DefaultExpiredSessionStrategy implements SessionInformationExpiredStrategy {

private final ObjectMapper objectMapper;

public DefaultExpiredSessionStrategy(ObjectMapper objectMapper) {
this.objectMapper = objectMapper;
}

@Override
public void onExpiredSessionDetected(SessionInformationExpiredEvent sessionInformationExpiredEvent) throws IOException {
HttpServletResponse response = sessionInformationExpiredEvent.getResponse();
response.setContentType(BizConst.JSON_UTF8);
response.getWriter().write(objectMapper.writeValueAsString(BizConst.SESSION_EXPIRE));
}

}

+ 35
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/handler/DefaultInvalidSessionStrategy.java View File

@@ -0,0 +1,35 @@
package com.ningdatech.kqapi.security.handler;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.ningdatech.kqapi.common.constant.BizConst;
import lombok.AllArgsConstructor;
import org.apache.http.HttpStatus;
import org.springframework.security.web.session.InvalidSessionStrategy;
import org.springframework.stereotype.Component;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
* <p>
* DefaultInvalidSessionStrategy
* </p>
*
* @author WendyYang
* @since 13:52 2023/3/2
*/
@Component
@AllArgsConstructor
public class DefaultInvalidSessionStrategy implements InvalidSessionStrategy {

private final ObjectMapper objectMapper;

@Override
public void onInvalidSessionDetected(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType(BizConst.JSON_UTF8);
response.setStatus(HttpStatus.SC_UNAUTHORIZED);
response.getWriter().write(objectMapper.writeValueAsString(BizConst.SESSION_EXPIRE));
}

}

+ 53
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/handler/DefaultLoginFailureHandler.java View File

@@ -0,0 +1,53 @@
package com.ningdatech.kqapi.security.handler;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.ningdatech.basic.model.ApiResponse;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Primary;
import org.springframework.http.HttpStatus;
import org.springframework.security.authentication.BadCredentialsException;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler;
import org.springframework.stereotype.Component;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
* <p>
* 登录失败处理器
* </p>
*
* @author WendyYang
* @since 00:11 2023/3/2
*/
@Slf4j
@Primary
@Component
public class DefaultLoginFailureHandler extends SimpleUrlAuthenticationFailureHandler {

private final ObjectMapper objectMapper;

public DefaultLoginFailureHandler(ObjectMapper objectMapper) {
this.objectMapper = objectMapper;
}

@Override
public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response,
AuthenticationException e) throws IOException {
response.setContentType("application/json;charset=UTF-8");
ApiResponse<Void> apiRet;
// 所有的认证异常都可以在这里添加,目前只支持用户名密码错误异常
if (e instanceof BadCredentialsException || e instanceof UsernameNotFoundException) {
apiRet = ApiResponse.of(ApiResponse.ERROR_CODE, e.getMessage());
} else {
apiRet = ApiResponse.of(ApiResponse.ERROR_CODE, "登录失败,请联系管理员");
}

response.setStatus(HttpStatus.OK.value());
response.getWriter().write(objectMapper.writeValueAsString(apiRet));
}

}

+ 42
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/handler/DefaultLoginSuccessHandler.java View File

@@ -0,0 +1,42 @@
package com.ningdatech.kqapi.security.handler;

import cn.hutool.core.util.CharsetUtil;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.ningdatech.basic.model.ApiResponse;
import org.springframework.context.annotation.Primary;
import org.springframework.http.MediaType;
import org.springframework.security.core.Authentication;
import org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler;
import org.springframework.stereotype.Component;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
* <p>
* DefaultLoginSuccessHandler
* </p>
*
* @author WendyYang
* @since 11:26 2024/4/20
*/
@Primary
@Component("defaultLoginSuccessHandler")
public class DefaultLoginSuccessHandler extends SavedRequestAwareAuthenticationSuccessHandler {

private final ObjectMapper objectMapper;

public DefaultLoginSuccessHandler(ObjectMapper objectMapper) {
this.objectMapper = objectMapper;
}

@Override
public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response,
Authentication authentication) throws IOException {
response.setContentType(MediaType.APPLICATION_JSON_VALUE);
response.setCharacterEncoding(CharsetUtil.UTF_8);
response.getWriter().write(objectMapper.writeValueAsString(ApiResponse.ofSuccess()));
}

}

+ 35
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/handler/DefaultLogoutSuccessHandler.java View File

@@ -0,0 +1,35 @@
package com.ningdatech.kqapi.security.handler;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.ningdatech.basic.model.ApiResponse;
import org.springframework.context.annotation.Primary;
import org.springframework.security.core.Authentication;
import org.springframework.security.web.authentication.logout.LogoutSuccessHandler;
import org.springframework.stereotype.Component;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
* <p>
* 默认的退出成功处理器
* </p>
*
* @author WendyYang
* @since 00:10 2023/3/2
*/
@Primary
@Component
public class DefaultLogoutSuccessHandler implements LogoutSuccessHandler {

private final ObjectMapper objectMapper = new ObjectMapper();

@Override
public void onLogoutSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication)
throws IOException {
// 退出成功后返回 和前端约定的Json
response.setContentType("application/json;charset=UTF-8");
response.getWriter().write(objectMapper.writeValueAsString(ApiResponse.ofSuccess()));
}
}

+ 82
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/listener/AuthEventListener.java View File

@@ -0,0 +1,82 @@
package com.ningdatech.kqapi.security.listener;

import cn.hutool.core.date.LocalDateTimeUtil;
import com.ningdatech.kqapi.security.model.UserInfoDetails;
import com.ningdatech.kqapi.security.model.WebRequestDetails;
import com.ningdatech.log.model.OptLogDTO;
import com.ningdatech.log.model.enumeration.LogType;
import com.ningdatech.log.service.OptLogService;
import com.ningdatech.log.util.AddressUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.context.event.EventListener;
import org.springframework.scheduling.annotation.Async;
import org.springframework.security.authentication.event.AbstractAuthenticationEvent;
import org.springframework.security.authentication.event.AuthenticationSuccessEvent;
import org.springframework.security.authentication.event.LogoutSuccessEvent;
import org.springframework.security.core.Authentication;
import org.springframework.stereotype.Component;

import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;

/**
* <p>
* AuthEventListener
* </p>
*
* @author WendyYang
* @since 11:27 2024/4/20
*/
@Component
@RequiredArgsConstructor
public class AuthEventListener {

private final OptLogService optLogService;

private static final String LOGIN = "用户登录";

private static final String LOGOUT = "退出登录";

@Async
@EventListener(AuthenticationSuccessEvent.class)
public void loginSuccessListener(AuthenticationSuccessEvent event) {
OptLogDTO optLog = buildOptLog(LOGIN, event);
optLogService.save(optLog);
}

@Async
@EventListener(LogoutSuccessEvent.class)
public void logoutSuccessListener(LogoutSuccessEvent event) {
OptLogDTO optLog = buildOptLog(LOGOUT, event);
optLogService.save(optLog);
}

private OptLogDTO buildOptLog(String description, AbstractAuthenticationEvent event) {
Authentication authentication = event.getAuthentication();
UserInfoDetails userDetails = (UserInfoDetails) authentication.getPrincipal();
WebRequestDetails webDetails = (WebRequestDetails) authentication.getDetails();
OptLogDTO optLog = new OptLogDTO();
optLog.setActionMethod(webDetails.getServletPath());
optLog.setDescription(description);
if (event instanceof AuthenticationSuccessEvent) {
optLog.setStartTime(webDetails.getLoginTime());
} else {
optLog.setStartTime(LocalDateTimeUtil.of(event.getTimestamp()));
}
LocalDateTime now = LocalDateTime.now();
optLog.setFinishTime(now);
optLog.setCreateOn(now);
long consumingTime = ChronoUnit.MILLIS.between(optLog.getStartTime(), now);
optLog.setConsumingTime(consumingTime);
optLog.setHttpMethod(webDetails.getMethod());
optLog.setUserName(userDetails.getRealName());
optLog.setCreateBy(userDetails.getUserId());
optLog.setRequestIp(webDetails.getRequestIp());
optLog.setRequestUri(webDetails.getRequestUri());
optLog.setRegionByIp(AddressUtil.getRegion(optLog.getRequestIp()));
optLog.setUa(webDetails.getUserAgent());
optLog.setType(LogType.OPT.name());
return optLog;
}

}

+ 69
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/model/UserInfoDetails.java View File

@@ -0,0 +1,69 @@
package com.ningdatech.kqapi.security.model;

import cn.hutool.core.collection.CollectionUtil;
import com.ningdatech.basic.auth.AbstractLoginUser;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;

import java.util.Collection;
import java.util.List;

/**
* @author LiuXinXin
* @date 2022/8/1 下午3:32
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class UserInfoDetails extends AbstractLoginUser implements UserDetails {

private static final long serialVersionUID = 8576155784065239307L;

private String password;

private String role;

/**
* 获取用户权限
*
* @return
*/
@Override
public Collection<? extends GrantedAuthority> getAuthorities() {
SimpleGrantedAuthority simpleGrantedAuthority = new SimpleGrantedAuthority(this.role);
return CollectionUtil.toList(simpleGrantedAuthority);
}

@Override
public String getPassword() {
return password;
}

@Override
public String getUsername() {
return getIdentifier();
}

@Override
public boolean isAccountNonExpired() {
return true;
}

@Override
public boolean isAccountNonLocked() {
return true;
}

@Override
public boolean isCredentialsNonExpired() {
return true;
}

@Override
public boolean isEnabled() {
return true;
}

}

+ 55
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/model/WebRequestDetails.java View File

@@ -0,0 +1,55 @@
package com.ningdatech.kqapi.security.model;

import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.servlet.ServletUtil;
import lombok.Getter;
import org.springframework.security.web.authentication.WebAuthenticationDetails;

import javax.servlet.http.HttpServletRequest;
import java.time.LocalDateTime;

/**
* <p>
* WebRequestDetails
* </p>
*
* @author WendyYang
* @since 2023/6/7
**/
@Getter
public class WebRequestDetails extends WebAuthenticationDetails {

private static final long serialVersionUID = -4466339683132696235L;

private final String requestIp;

private final String requestUri;

private final String method;

private final String servletPath;

private final String requestUrl;

private final String userAgent;

private final LocalDateTime loginTime;

/**
* Records the remote address and will also set the session Id if a session already
* exists (it won't create one).
*
* @param request that the authentication request was received from
*/
public WebRequestDetails(HttpServletRequest request, LocalDateTime loginTime) {
super(request);
this.requestUri = request.getRequestURI();
this.method = request.getMethod();
this.servletPath = request.getServletPath();
this.requestUrl = request.getRequestURL().toString();
this.requestIp = ServletUtil.getClientIP(request);
this.userAgent = StrUtil.sub(request.getHeader("user-agent"), 0, 500);
this.loginTime = loginTime;
}

}

+ 20
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/model/dto/LoginDeviceInfoDTO.java View File

@@ -0,0 +1,20 @@
package com.ningdatech.kqapi.security.model.dto;

import lombok.Data;

/**
* <p>
* WechatLoginDeviceInfoDTO
* </p>
*
* @author WendyYang
* @since 2023/10/31
**/
@Data
public class LoginDeviceInfoDTO {

private String deviceModel;

private String openId;

}

+ 31
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/model/dto/UserInfoBO.java View File

@@ -0,0 +1,31 @@
package com.ningdatech.kqapi.security.model.dto;

import com.ningdatech.kqapi.user.model.enumerization.AccountStatus;
import lombok.Data;

/**
* <p>
* UserInfoBO
* </p>
*
* @author WendyYang
* @since 10:16 2024/4/20
*/
@Data
public class UserInfoBO {

private Long userId;

private String realName;

private String username;

private String identifier;

private String credential;

private String role;

private AccountStatus accountStatus;

}

+ 42
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/password/PasswordAuthProvider.java View File

@@ -0,0 +1,42 @@
package com.ningdatech.kqapi.security.password;

import com.ningdatech.kqapi.user.helper.LoginHelper;
import lombok.Setter;
import org.springframework.security.authentication.AuthenticationProvider;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;

/**
* <p>
* UsernamePasswordAuthProvider
* </p>
*
* @author LiuXinXin
* @since 2020/8/3 8:55 下午
**/
@Setter
public class PasswordAuthProvider implements AuthenticationProvider {

private UserDetailsService userDetailsService;

private LoginHelper loginHelper;

@Override
public Authentication authenticate(Authentication authentication) throws AuthenticationException {
UsernamePasswordAuthToken authToken = (UsernamePasswordAuthToken) authentication;

UserDetails user = userDetailsService.loadUserByUsername((String) authToken.getPrincipal());
loginHelper.checkPassword(user, authToken);
// 校验用户是否有当前端的登陆权限
// 将用户定义的user放入token中,这样可以在session中查询到所有自定义的用户信息
return new UsernamePasswordAuthToken(user, user.getPassword(), user.getAuthorities());
}

@Override
public boolean supports(Class<?> authentication) {
return UsernamePasswordAuthToken.class.isAssignableFrom(authentication);
}

}

+ 51
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/password/PasswordAuthSecurityConfig.java View File

@@ -0,0 +1,51 @@
package com.ningdatech.kqapi.security.password;

import com.ningdatech.kqapi.security.AuthProperties;
import com.ningdatech.kqapi.user.helper.LoginHelper;
import lombok.RequiredArgsConstructor;
import org.springframework.security.authentication.AuthenticationManager;
import org.springframework.security.config.annotation.SecurityConfigurerAdapter;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.web.DefaultSecurityFilterChain;
import org.springframework.security.web.authentication.AuthenticationFailureHandler;
import org.springframework.security.web.authentication.AuthenticationSuccessHandler;
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
import org.springframework.stereotype.Component;

/**
* <p>
* 账号密码登陆的认证配置
* </p>
*
* @author WendyYang
* @since 09:54 2023/3/2
*/
@Component
@RequiredArgsConstructor
public class PasswordAuthSecurityConfig extends SecurityConfigurerAdapter<DefaultSecurityFilterChain, HttpSecurity> {

private final AuthenticationSuccessHandler authenticationSuccessHandler;
private final AuthenticationFailureHandler authenticationFailureHandler;
private final UserDetailsService userDetailsService;
private final AuthProperties authProperties;
private final LoginHelper loginHelper;

@Override
public void configure(HttpSecurity http) {
UsernamePasswordAuthFilter authFilter = new UsernamePasswordAuthFilter(authProperties.getPasswordLoginUrl(),
authProperties.getPostOnlyByLogin());
AuthenticationManager authenticationManager = http.getSharedObject(AuthenticationManager.class);
authFilter.setAuthenticationManager(authenticationManager);
authFilter.setAuthenticationSuccessHandler(authenticationSuccessHandler);
authFilter.setAuthenticationFailureHandler(authenticationFailureHandler);

PasswordAuthProvider authProvider = new PasswordAuthProvider();
authProvider.setUserDetailsService(userDetailsService);
// 确保对密码进行加密的encoder和解密的encoder相同
authProvider.setLoginHelper(loginHelper);
http.authenticationProvider(authProvider)
.addFilterAfter(authFilter, UsernamePasswordAuthenticationFilter.class);
}

}

+ 45
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/password/PasswordLoginUserDetailService.java View File

@@ -0,0 +1,45 @@
package com.ningdatech.kqapi.security.password;

import com.baomidou.mybatisplus.core.toolkit.Assert;
import com.ningdatech.kqapi.security.facade.UserAuthLoginFacade;
import com.ningdatech.kqapi.security.model.UserInfoDetails;
import com.ningdatech.kqapi.security.model.dto.UserInfoBO;
import lombok.RequiredArgsConstructor;
import org.springframework.context.annotation.Primary;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service;

import static com.ningdatech.kqapi.user.model.enumerization.AccountStatus.ENABLE;

/**
* <p>
* PasswordLoginUserDetailService
* </p>
*
* @author WendyYang
* @since 10:20 2024/4/20
*/
@Primary
@Service
@RequiredArgsConstructor
public class PasswordLoginUserDetailService implements UserDetailsService {

private final UserAuthLoginFacade userAuthLoginFacade;

@Override
public UserInfoDetails loadUserByUsername(String username) throws UsernameNotFoundException {
UserInfoBO user = userAuthLoginFacade.queryUserInfoInPasswordAuth(username);
Assert.notNull(user, "用户不存在");
Assert.isTrue(ENABLE.equals(user.getAccountStatus()), "用户已被禁用");
UserInfoDetails details = new UserInfoDetails();
details.setUserId(user.getUserId());
details.setUsername(user.getRealName());
details.setRealName(user.getRealName());
details.setRole(user.getRole());
details.setIdentifier(user.getIdentifier());
details.setPassword(user.getCredential());
return details;
}

}

+ 57
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/password/UsernamePasswordAuthFilter.java View File

@@ -0,0 +1,57 @@
package com.ningdatech.kqapi.security.password;

import cn.hutool.core.util.StrUtil;
import com.ningdatech.kqapi.common.exception.BizException;
import com.ningdatech.kqapi.security.constant.AuthConst;
import com.ningdatech.kqapi.security.model.WebRequestDetails;
import org.springframework.http.HttpMethod;
import org.springframework.security.authentication.BadCredentialsException;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter;
import org.springframework.security.web.util.matcher.AntPathRequestMatcher;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.time.LocalDateTime;

/**
* <p>
* UsernamePasswordAuthFilter
* </p>
*
* @author WendyYang
* @since 2023/9/1
**/
public class UsernamePasswordAuthFilter extends AbstractAuthenticationProcessingFilter {

private final Boolean postOnly;

public UsernamePasswordAuthFilter(String processingUrl, Boolean postOnly) {
super(new AntPathRequestMatcher(processingUrl, HttpMethod.POST.name()));
this.postOnly = postOnly;
}

@Override
public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response)
throws AuthenticationException {
LocalDateTime now = LocalDateTime.now();
if (Boolean.TRUE.equals(postOnly) && !request.getMethod().equals(HttpMethod.POST.name())) {
throw BizException.wrap("请求方法错误");
}
String username = StrUtil.trim(request.getParameter(AuthConst.USERNAME));
String password = StrUtil.trim(request.getParameter(AuthConst.PASSWORD));
try {
UsernamePasswordAuthToken authRequest = new UsernamePasswordAuthToken(username, password);
authRequest.setDetails(new WebRequestDetails(request, now));
return this.getAuthenticationManager().authenticate(authRequest);
} catch (BadCredentialsException | UsernameNotFoundException e) {
throw e;
} catch (Exception e) {
throw BizException.wrap("登录失败,请联系管理员!");
}
}


}

+ 85
- 0
kqapi/src/main/java/com/ningdatech/kqapi/security/password/UsernamePasswordAuthToken.java View File

@@ -0,0 +1,85 @@
package com.ningdatech.kqapi.security.password;

import lombok.Getter;
import lombok.Setter;
import org.springframework.security.authentication.AbstractAuthenticationToken;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.SpringSecurityCoreVersion;

import java.util.Collection;

/**
* <p>
* UsernamePasswordAuthToken
* </p>
*
* @author LiuXinXin
* @since 2023/10/31
**/
@Getter
@Setter
public class UsernamePasswordAuthToken extends AbstractAuthenticationToken {

private static final long serialVersionUID = SpringSecurityCoreVersion.SERIAL_VERSION_UID;

private final Object principal;

private final Object credentials;

private transient String openId;

private transient String deviceModel;

/**
* This constructor can be safely used by any code that wishes to create a
* <code>UsernamePasswordAuthenticationToken</code>, as the {@link #isAuthenticated()} will return
* <code>false</code>.
*/
public UsernamePasswordAuthToken(String principal, String credentials) {
super(null);
this.principal = principal;
this.credentials = credentials;
setAuthenticated(false);
}

/**
* This constructor should only be used by <code>AuthenticationManager</code> or <code>AuthenticationProvider</code>
* implementations that are satisfied with producing a trusted (i.e. {@link #isAuthenticated()} = <code>true</code>)
* authentication token.
*
* @param principal \
* @param authorities \
*/
public UsernamePasswordAuthToken(Object principal, Object credentials,
Collection<? extends GrantedAuthority> authorities) {
super(authorities);
this.principal = principal;
this.credentials = credentials;
super.setAuthenticated(true);
}

@Override
public Object getCredentials() {
return this.credentials;
}

@Override
public Object getPrincipal() {
return this.principal;
}

@Override
public void setAuthenticated(boolean isAuthenticated) throws IllegalArgumentException {
if (isAuthenticated) {
throw new IllegalArgumentException(
"Cannot set this token to trusted - use constructor which takes a GrantedAuthority list instead");
}
super.setAuthenticated(false);
}

@Override
public void eraseCredentials() {
super.eraseCredentials();
}

}

+ 6
- 6
kqapi/src/main/java/com/ningdatech/kqapi/sso/utils/HmacAuthUtil.java View File

@@ -13,10 +13,10 @@ import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
import javax.xml.bind.DatatypeConverter;

import org.apache.commons.math3.util.Pair;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;

import javafx.util.Pair;
import lombok.extern.slf4j.Slf4j;

/**
@@ -76,7 +76,7 @@ public class HmacAuthUtil {
if (query == null || query.trim().length() == 0) {
return "";
}
List<javafx.util.Pair<String, String>> queryParamList = new ArrayList<>();
List<Pair<String, String>> queryParamList = new ArrayList<>();
String[] params = query.split("&");
for (String param : params) {
int eqIndex = param.indexOf("=");
@@ -86,12 +86,12 @@ public class HmacAuthUtil {
key = param.substring(0, eqIndex);
value = param.substring(eqIndex+1);
}
javafx.util.Pair<String, String> pair = new javafx.util.Pair<String, String>(key,value);
Pair<String, String> pair = new Pair<>(key, value);
queryParamList.add(pair);
}

List<javafx.util.Pair<String, String>> sortedParamList = queryParamList.stream().sorted(Comparator.comparing(param -> param.getKey() + "=" + Optional.ofNullable(param.getValue()).orElse(""))).collect(Collectors.toList());
List<javafx.util.Pair<String, String>> encodeParamList = new ArrayList<>();
List<Pair<String, String>> sortedParamList = queryParamList.stream().sorted(Comparator.comparing(param -> param.getKey() + "=" + Optional.ofNullable(param.getValue()).orElse(""))).collect(Collectors.toList());
List<Pair<String, String>> encodeParamList = new ArrayList<>();
sortedParamList.stream().forEach(param -> {
try {
String key = URLEncoder.encode(param.getKey(), "utf-8");
@@ -105,7 +105,7 @@ public class HmacAuthUtil {
.replaceAll("\\%7E","~")
.replaceAll("\\%25","%")
;
encodeParamList.add(new javafx.util.Pair<>(key, value));
encodeParamList.add(new Pair<>(key, value));
} catch (UnsupportedEncodingException e) {
throw new RuntimeException("encoding error");
}


+ 77
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/controller/UserAuthController.java View File

@@ -0,0 +1,77 @@
package com.ningdatech.kqapi.user.controller;


import com.fasterxml.jackson.databind.ObjectMapper;
import com.ningdatech.kqapi.common.constant.BizConst;
import com.ningdatech.kqapi.common.util.StrPool;
import com.ningdatech.kqapi.security.constant.AuthConst;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
* @author Liuxinxin
* @since 2022-11-23
*/
@RestController
@RequestMapping("/api/v1/user/auth")
@Api(tags = {"用户鉴权-相关接口"})
@RequiredArgsConstructor
public class UserAuthController {

private final ObjectMapper objectMapper;

@PostMapping(value = "/login/password", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
@ApiOperation(value = "账号密码的登陆方式")
@ApiImplicitParams({
@ApiImplicitParam(name = "username", value = "用户名", required = true, paramType = "form", dataType = "String"),
@ApiImplicitParam(name = "password", value = "密码", required = true, paramType = "form", dataType = "String")
})
public void loginByUsernameAndPassword(@RequestParam("username") String username,
@RequestParam("password") String password) {
// 不实现任何内容,只是为了出api文档
}

@PostMapping(value = "/logout")
@ApiOperation(value = "退出登陆")
public void logout() {
// 不实现任何内容,具体实现交由Spring Security进行管理
}

/**
* 当需要身份认证时,跳转到这里
*/
@GetMapping("/auth-require")
@CrossOrigin(originPatterns = "*", allowCredentials = "true", maxAge = 3600)
public void requireAuthentication(HttpServletResponse response) throws IOException {
response.setContentType(StrPool.CONTENT_TYPE);
response.setStatus(HttpStatus.UNAUTHORIZED.value());
response.getWriter().write(objectMapper.writeValueAsString(BizConst.UNAUTHENTICATED));
}

/**
* 设置session失效
*/
@GetMapping("/invalid-session")
@CrossOrigin(originPatterns = "*", allowCredentials = "true", maxAge = 3600)
public void invalidSession(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType(StrPool.CONTENT_TYPE);
Cookie cookie = new Cookie(BizConst.COOKIE_KEY, null);
cookie.setPath(request.getContextPath() + "/");
cookie.setMaxAge(AuthConst.SESSION_EXPIRED);
response.addCookie(cookie);
response.setStatus(HttpStatus.UNAUTHORIZED.value());
response.getWriter().write(objectMapper.writeValueAsString(BizConst.UNAUTHENTICATED));
}

}

+ 99
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/controller/UserInfoController.java View File

@@ -0,0 +1,99 @@
package com.ningdatech.kqapi.user.controller;


import com.ningdatech.basic.model.IdVo;
import com.ningdatech.basic.model.PageVo;
import com.ningdatech.kqapi.user.manage.UserInfoManage;
import com.ningdatech.kqapi.user.model.po.*;
import com.ningdatech.kqapi.user.model.vo.UserBasicInfoVO;
import com.ningdatech.kqapi.user.model.vo.ResUserListVO;
import com.ningdatech.kqapi.user.model.vo.UserDetailVO;
import com.ningdatech.kqapi.user.service.IUserInfoService;
import com.ningdatech.log.annotation.WebLog;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;

import javax.validation.Valid;

/**
* <p>
* 前端控制器
* </p>
*
* @author Liuxinxin
* @since 2022-11-23
*/
@RestController
@RequestMapping("/api/v1/user-info")
@Api(tags = {"用户信息-相关接口"})
@RequiredArgsConstructor
public class UserInfoController {

private final UserInfoManage userInfoManage;
private final IUserInfoService iUserInfoService;

@PostMapping(value = "/save")
@ApiOperation(value = "保存用户")
@WebLog(value = "保存用户")
public void saveUser(@Valid @RequestBody SaveUserReq request) {
userInfoManage.saveUser(request);
}

@PostMapping(value = "/changeAccountStatus")
@ApiOperation(value = "账号状态变更")
@WebLog(value = "账号状态变更")
public void changeAccountStatus(@Valid @RequestBody ChangeAccountStatusReq req) {
userInfoManage.changeAccountStatus(req);
}

@GetMapping("detail/{userId}")
@ApiOperation("获取用户详情")
@WebLog(value = "获取用户详情")
public UserDetailVO getUserDetail(@PathVariable Long userId) {
return userInfoManage.getUserDetail(userId);
}

@DeleteMapping("/del")
@ApiOperation("删除用户")
@WebLog(value = "删除用户")
public void deleteUser(@RequestBody IdVo<Long> req) {
userInfoManage.deleteUser(req.getId());
}

@PostMapping(value = "/list")
@ApiOperation(value = "用户列表筛选")
@WebLog(value = "用户列表筛选")
public PageVo<ResUserListVO> listUser(@Valid @RequestBody UserListReq request) {
return userInfoManage.listUser(request);
}

@PostMapping(value = "/basic-info")
@ApiOperation("获取用户基本信息")
@WebLog(value = "获取用户基本信息")
public UserBasicInfoVO getBasicInfo() {
return userInfoManage.getBasicInfo();
}

@PostMapping("/kick-off/{userId}")
@ApiOperation("踢用户下线测试接口")
public void kickOff(@Valid @PathVariable Long userId) {
userInfoManage.kickOff(userId);
}

@PostMapping("/password/mod")
@ApiOperation("修改密码")
@WebLog(value = "修改密码")
public void changePassword(@Valid @RequestBody ModifyPasswordReq po) {
userInfoManage.changePassword(po);
}

@PostMapping("/password/self")
@ApiOperation("修改个人密码")
@WebLog(value = "修改个人密码")
public void changePasswordByUser(@Valid @RequestBody ModifyPasswordReq po) {
userInfoManage.changePasswordByUser(po);
}

}

+ 33
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/helper/LoginHelper.java View File

@@ -0,0 +1,33 @@
package com.ningdatech.kqapi.user.helper;

import com.ningdatech.kqapi.security.password.UsernamePasswordAuthToken;
import lombok.AllArgsConstructor;
import org.springframework.security.authentication.BadCredentialsException;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Component;

/**
* <p>
* LoginHelper
* </p>
*
* @author WendyYang
* @since 2023/10/31
**/
@Component
@AllArgsConstructor
public class LoginHelper {

private final PasswordEncoder passwordEncoder;

public void checkPassword(UserDetails userDetails, UsernamePasswordAuthToken authToken)
throws AuthenticationException {
String presentedPassword = authToken.getCredentials().toString();
if (!passwordEncoder.matches(presentedPassword, userDetails.getPassword())) {
throw new BadCredentialsException("用户名或密码错误");
}
}

}

+ 23
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/helper/UserInfoHelper.java View File

@@ -0,0 +1,23 @@
package com.ningdatech.kqapi.user.helper;


/**
* <p>
* UserInfoHelper
* </p>
*
* @author WendyYang
* @since 2023/7/11
**/
public class UserInfoHelper {

private UserInfoHelper() {
}






}

+ 248
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/manage/UserInfoManage.java View File

@@ -0,0 +1,248 @@
package com.ningdatech.kqapi.user.manage;

import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ningdatech.basic.exception.BizException;
import com.ningdatech.basic.model.PageVo;
import com.ningdatech.basic.util.CollUtils;
import com.ningdatech.kqapi.common.constant.BizConst;
import com.ningdatech.kqapi.common.enumeration.RoleEnum;
import com.ningdatech.kqapi.security.constant.AuthTypeEnum;
import com.ningdatech.kqapi.user.model.entity.UserAuth;
import com.ningdatech.kqapi.user.model.entity.UserInfo;
import com.ningdatech.kqapi.user.model.enumerization.AccountStatus;
import com.ningdatech.kqapi.user.model.po.ChangeAccountStatusReq;
import com.ningdatech.kqapi.user.model.po.ModifyPasswordReq;
import com.ningdatech.kqapi.user.model.po.SaveUserReq;
import com.ningdatech.kqapi.user.model.po.UserListReq;
import com.ningdatech.kqapi.user.model.vo.UserBasicInfoVO;
import com.ningdatech.kqapi.user.model.vo.ResUserListVO;
import com.ningdatech.kqapi.user.model.vo.UserDetailVO;
import com.ningdatech.kqapi.user.service.IUserAuthService;
import com.ningdatech.kqapi.user.service.IUserInfoService;
import com.ningdatech.kqapi.user.util.BizUtils;
import com.ningdatech.kqapi.user.util.LoginUserUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.session.data.redis.RedisIndexedSessionRepository;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

import java.time.LocalDateTime;
import java.util.*;
import java.util.function.Function;


/**
* @author liuxinxin
* @date 2022/11/23 下午5:04
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class UserInfoManage {

private final IUserInfoService userInfoService;
private final IUserAuthService userAuthService;
private final PasswordEncoder passwordEncoder;
private final RedisIndexedSessionRepository redisIndexedSessionRepository;

private static final String PASSWORD_MODIFY_DENY = "您暂无修改该用户密码的权限!";


@Transactional(rollbackFor = Exception.class)
public synchronized void changeAccountStatus(ChangeAccountStatusReq req) {
UserInfo userInfo = userInfoService.getById(req.getUserId());
if (userInfo == null || req.getAccountStatus().equals(userInfo.getAccountStatus())) {
return;
}
Wrapper<UserInfo> update = Wrappers.lambdaUpdate(UserInfo.class)
.set(UserInfo::getAccountStatus, req.getAccountStatus())
.eq(UserInfo::getId, req.getUserId());
userInfoService.update(update);
// 账号禁用退出登录
if (AccountStatus.DISABLE.equals(req.getAccountStatus())) {
kickOff(req.getUserId());
}
}

@Transactional(rollbackFor = Exception.class)
public synchronized void saveUser(SaveUserReq req) {
Long userId = req.getUserId();
UserInfo oldUser = null;
if (userId == null) {
BizUtils.password(req.getPassword());
} else {
oldUser = userInfoService.getById(userId);
}
// 校验 账号是否已经使用
validateAuthIdentifier(req.getUserName(), userId);
validateAuthIdentifier(req.getPhoneNo(), userId);
// 新建
UserInfo entity = new UserInfo();
entity.setId(userId);
entity.setMobile(req.getPhoneNo());
entity.setRealName(req.getRealName());
entity.setUsername(req.getUserName());
entity.setAvatarFileId(req.getAvatarFileId());
userInfoService.saveOrUpdate(entity);
if (userId == null) {
String password = passwordEncoder.encode(req.getPassword());
List<UserAuth> auths = new ArrayList<>();
UserAuth accountAuth = new UserAuth();
accountAuth.setAuthType(AuthTypeEnum.ACCOUNT_PASSWORD.name());
accountAuth.setUserId(entity.getId());
accountAuth.setIdentifier(entity.getUsername());
accountAuth.setCredential(password);
auths.add(accountAuth);
UserAuth phoneAuth = new UserAuth();
phoneAuth.setAuthType(AuthTypeEnum.PHONE_PASSWORD.name());
phoneAuth.setUserId(entity.getId());
phoneAuth.setIdentifier(entity.getMobile());
phoneAuth.setCredential(password);
auths.add(phoneAuth);
userAuthService.saveBatch(auths);
} else {
// 用户ID不为空时修改账号
if (!oldUser.getMobile().equals(req.getPhoneNo())) {
LambdaUpdateWrapper<UserAuth> phoneAuth = Wrappers.lambdaUpdate(UserAuth.class)
.set(UserAuth::getIdentifier, req.getPhoneNo())
.eq(UserAuth::getUserId, userId)
.eq(UserAuth::getAuthType, AuthTypeEnum.PHONE_PASSWORD);
userAuthService.update(phoneAuth);
}
if (!oldUser.getUsername().equals(req.getUserName())) {
LambdaUpdateWrapper<UserAuth> accountAuth = Wrappers.lambdaUpdate(UserAuth.class)
.set(UserAuth::getIdentifier, req.getUserName())
.eq(UserAuth::getUserId, userId)
.eq(UserAuth::getAuthType, AuthTypeEnum.ACCOUNT_PASSWORD);
userAuthService.update(accountAuth);
}
}
}

public UserDetailVO getUserDetail(Long userId) {
UserInfo info = userInfoService.getById(userId);
Assert.notNull(info, "用户不存在");
return UserDetailVO.builder()
.userId(info.getId())
.realName(info.getRealName())
.userName(info.getUsername())
.avatarFileId(info.getAvatarFileId())
.phoneNo(info.getMobile())
.role(RoleEnum.valueOf(info.getRole()))
.accountStatus(info.getAccountStatus())
.build();
}

public PageVo<ResUserListVO> listUser(UserListReq req) {
// 获取入参
String realName = req.getRealName();
// 获取区域列表
Wrapper<UserInfo> query = Wrappers.lambdaQuery(UserInfo.class)
.like(StrUtil.isNotBlank(realName), UserInfo::getRealName, realName)
.eq(StrUtil.isNotBlank(req.getMobile()), UserInfo::getMobile, req.getMobile())
.eq(req.getRole() != null, UserInfo::getRole, req.getRole())
.orderByDesc(UserInfo::getUpdateOn);
Page<UserInfo> page = userInfoService.page(req.page(), query);
PageVo<ResUserListVO> pageVo = new PageVo<>();
long total = page.getTotal();
pageVo.setTotal(total);
if (total > 0) {
Function<UserInfo, ResUserListVO> mapping = r -> {
ResUserListVO res = new ResUserListVO();
res.setUserId(r.getId());
res.setRealName(r.getRealName());
res.setCreateTime(r.getCreateOn());
res.setPhoneNo(r.getMobile());
res.setAccountStatus(r.getAccountStatus());
BizUtils.notBlank(r.getRole(), w -> res.setRole(RoleEnum.valueOf(w)));
return res;
};
pageVo.setRecords(CollUtils.convert(page.getRecords(), mapping));
}
return pageVo;
}

public UserBasicInfoVO getBasicInfo() {
Long userId = LoginUserUtil.getUserId();
UserInfo userInfo = userInfoService.getById(userId);
UserBasicInfoVO result = new UserBasicInfoVO();
result.setUserId(userId);
result.setRealName(userInfo.getRealName());
BizUtils.notBlank(userInfo.getRole(), role -> {
result.setRole(RoleEnum.valueOf(role));
result.setRoleName(result.getRole().getDisplayName());
});
return result;
}

private void validateAuthIdentifier(String identifier, Long userId) {
Wrapper<UserAuth> query = Wrappers.lambdaQuery(UserAuth.class)
.eq(UserAuth::getIdentifier, identifier)
.ne(userId != null, UserAuth::getUserId, userId)
.last(BizConst.LIMIT_1);
UserAuth userAuth = userAuthService.getOne(query);
if (Objects.nonNull(userAuth)) {
throw new BizException("当前账号已经注册");
}

}

/**
* 踢用户下线
*
* @param userId 用户ID
*/
public void kickOff(Long userId) {
List<UserAuth> userAuthList = userAuthService.listByUserId(userId);
List<String> identifierList = CollUtils.fieldList(userAuthList, UserAuth::getIdentifier);
if (CollectionUtil.isNotEmpty(identifierList)) {
Set<String> allSessionIdList = new HashSet<>();
for (String identifier : identifierList) {
Set<String> sessionIds = redisIndexedSessionRepository.findByPrincipalName(identifier).keySet();
allSessionIdList.addAll(sessionIds);
}
if (!allSessionIdList.isEmpty()) {
for (String sessionId : allSessionIdList) {
redisIndexedSessionRepository.deleteById(sessionId);
}
}
}
}

@Transactional(rollbackFor = Exception.class)
public void deleteUser(Long userId) {
kickOff(userId);
userInfoService.removeById(userId);
userAuthService.removeByUserId(userId);
}

public void changePassword(ModifyPasswordReq po) {
String password = passwordEncoder.encode(po.getPassword());
Wrapper<UserAuth> update = Wrappers.lambdaUpdate(UserAuth.class)
.set(UserAuth::getCredential, password)
.set(UserAuth::getUpdateOn, LocalDateTime.now())
.eq(UserAuth::getUserId, po.getUserId());
userAuthService.update(update);
}

public void changePasswordByUser(ModifyPasswordReq po) {
Long userId = LoginUserUtil.getUserId();
if (!userId.equals(po.getUserId())) {
throw BizException.wrap(PASSWORD_MODIFY_DENY);
}
LambdaUpdateWrapper<UserAuth> update = Wrappers.lambdaUpdate(UserAuth.class)
.set(UserAuth::getCredential, passwordEncoder.encode(po.getPassword()))
.eq(UserAuth::getUserId, po.getUserId());
userAuthService.update(update);
}


}

+ 16
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/mapper/UserAuthMapper.java View File

@@ -0,0 +1,16 @@
package com.ningdatech.kqapi.user.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ningdatech.kqapi.user.model.entity.UserAuth;

/**
* <p>
* UserAuthMapper
* </p>
*
* @author WendyYang
* @since 10:21 2024/4/20
*/
public interface UserAuthMapper extends BaseMapper<UserAuth> {

}

+ 5
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/mapper/UserAuthMapper.xml View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ningdatech.kqapi.user.mapper.UserAuthMapper">

</mapper>

+ 16
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/mapper/UserInfoMapper.java View File

@@ -0,0 +1,16 @@
package com.ningdatech.kqapi.user.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ningdatech.kqapi.user.model.entity.UserInfo;

/**
* <p>
* UserInfoMapper
* </p>
*
* @author WendyYang
* @since 10:21 2024/4/20
*/
public interface UserInfoMapper extends BaseMapper<UserInfo> {

}

+ 5
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/mapper/UserInfoMapper.xml View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ningdatech.kqapi.user.mapper.UserInfoMapper">

</mapper>

+ 42
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/model/entity/UserAuth.java View File

@@ -0,0 +1,42 @@
package com.ningdatech.kqapi.user.model.entity;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
* <p>
* UserAuth
* </p>
*
* @author WendyYang
* @since 09:57 2024/4/20
*/
@Data
@TableName("nd_user_auth")
@ApiModel(value = "UserAuth对象")
public class UserAuth implements Serializable {

private static final long serialVersionUID = 1L;

@TableId(value = "id", type = IdType.AUTO)
private Long id;

@TableField(fill = FieldFill.INSERT)
private LocalDateTime createOn;

@TableField(fill = FieldFill.INSERT_UPDATE)
private LocalDateTime updateOn;

private Long userId;

private String authType;

private String identifier;

private String credential;

}

+ 69
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/model/entity/UserInfo.java View File

@@ -0,0 +1,69 @@
package com.ningdatech.kqapi.user.model.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.ningdatech.kqapi.user.model.enumerization.AccountStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
* <p>
* 用户基本信息
* </p>
*
* @author Liuxinxin
* @since 2022-11-23
*/
@Data
@TableName("nd_user_info")
@ApiModel(value = "UserInfo对象")
public class UserInfo implements Serializable {

private static final long serialVersionUID = 1L;

@ApiModelProperty("主键")
@TableId(value = "id", type = IdType.AUTO)
private Long id;

@ApiModelProperty("创建时间")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createOn;

@ApiModelProperty("最后修改时间")
@TableField(fill = FieldFill.INSERT_UPDATE)
private LocalDateTime updateOn;

@ApiModelProperty("创建人")
@TableField(fill = FieldFill.INSERT)
private Long createBy;

@ApiModelProperty("最后修改人")
@TableField(fill = FieldFill.INSERT_UPDATE)
private Long updateBy;

@ApiModelProperty("用户名")
private String username;

@ApiModelProperty("手机")
private String mobile;

@ApiModelProperty("用户真实姓名")
private String realName;

@ApiModelProperty("角色")
private String role;

@ApiModelProperty("头像文件id")
private Long avatarFileId;

@ApiModelProperty("账号状态")
private AccountStatus accountStatus;

@TableLogic
@ApiModelProperty("逻辑删除")
private Boolean deleted;

}

+ 20
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/model/enumerization/AccountStatus.java View File

@@ -0,0 +1,20 @@
package com.ningdatech.kqapi.user.model.enumerization;

/**
* <p>
* AccountStatus
* </p>
*
* @author WendyYang
* @since 2023/7/21
**/
public enum AccountStatus {

ENABLE,
DISABLE;

public boolean eq(String status) {
return this.name().equals(status);
}

}

+ 28
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/model/po/ChangeAccountStatusReq.java View File

@@ -0,0 +1,28 @@
package com.ningdatech.kqapi.user.model.po;

import com.ningdatech.kqapi.user.model.enumerization.AccountStatus;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;

/**
* <p>
* ChangeAccountStatusReq
* </p>
*
* @author WendyYang
* @since 2023/7/21
**/
@Data
public class ChangeAccountStatusReq {

@ApiModelProperty("用户ID")
@NotNull(message = "用户ID不能为空")
private Long userId;

@ApiModelProperty("账号状态")
@NotNull(message = "账号状态不能为空")
private AccountStatus accountStatus;

}

+ 31
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/model/po/ModifyPasswordReq.java View File

@@ -0,0 +1,31 @@
package com.ningdatech.kqapi.user.model.po;

import com.ningdatech.kqapi.common.constant.BizConst;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;

/**
* <p>
* ModifyPasswordReq
* </p>
*
* @author WendyYang
* @since 10:34 2024/4/20
*/
@Data
public class ModifyPasswordReq {

@ApiModelProperty("用户ID")
@NotNull(message = "用户ID不能为空")
private Long userId;

@ApiModelProperty("密码")
@NotBlank(message = "密码不能为空")
@Pattern(regexp = BizConst.REGEX_PASS, message = "请输入6-10位大小写字母或数字")
private String password;

}

+ 52
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/model/po/SaveUserReq.java View File

@@ -0,0 +1,52 @@
package com.ningdatech.kqapi.user.model.po;

import cn.hutool.core.lang.RegexPool;
import com.ningdatech.kqapi.common.enumeration.RoleEnum;
import com.ningdatech.kqapi.user.model.enumerization.AccountStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;

/**
* <p>
* SaveUserReq
* </p>
*
* @author WendyYang
* @since 10:26 2024/4/20
*/
@Data
@ApiModel("保存用户请求PO")
public class SaveUserReq {

@ApiModelProperty("用户id")
private Long userId;

@NotBlank(message = "用户姓名 必填")
@ApiModelProperty("用户姓名 必填")
private String realName;

@NotBlank(message = "手机号 必填")
@ApiModelProperty("手机号 必填")
@Pattern(regexp = RegexPool.MOBILE, message = "请输入正确的手机号")
private String phoneNo;

@NotBlank(message = "用户登陆名 必填")
@ApiModelProperty("用户登陆名 必填")
private String userName;

@ApiModelProperty("密码")
private String password;

private RoleEnum role;

@ApiModelProperty("免冠照图片文件id")
private Long avatarFileId;

@ApiModelProperty("账号状态")
private AccountStatus accountStatus;

}

+ 35
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/model/po/UserListReq.java View File

@@ -0,0 +1,35 @@
package com.ningdatech.kqapi.user.model.po;

import com.ningdatech.basic.model.PagePo;
import com.ningdatech.kqapi.common.enumeration.RoleEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
* <p>
* UserListReq
* </p>
*
* @author WendyYang
* @since 10:27 2024/4/20
*/
@Data
@ApiModel("用户列表筛选PO")
@EqualsAndHashCode(callSuper = true)
public class UserListReq extends PagePo {

@ApiModelProperty("用户姓名")
private String realName;

/**
* {@link RoleEnum}
*/
private RoleEnum role;

@ApiModelProperty("手机号")
private String mobile;

}


+ 41
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/model/vo/ResUserListVO.java View File

@@ -0,0 +1,41 @@
package com.ningdatech.kqapi.user.model.vo;

import com.ningdatech.kqapi.common.enumeration.RoleEnum;
import com.ningdatech.kqapi.user.model.enumerization.AccountStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import java.time.LocalDateTime;

/**
* <p>
* ResUserListVO
* </p>
*
* @author WendyYang
* @since 10:32 2024/4/20
*/
@Data
@ApiModel("用户列表筛选VO")
public class ResUserListVO {

@ApiModelProperty("用户id")
private Long userId;

@ApiModelProperty("用户姓名")
private String realName;

@NotBlank
@ApiModelProperty("手机号")
private String phoneNo;

private RoleEnum role;

@ApiModelProperty("创建时间")
private LocalDateTime createTime;

private AccountStatus accountStatus;

}

+ 32
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/model/vo/UserBasicInfoVO.java View File

@@ -0,0 +1,32 @@
package com.ningdatech.kqapi.user.model.vo;

import com.ningdatech.kqapi.common.enumeration.RoleEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
* <p>
* ResUserBasicInfoVO
* </p>
*
* @author WendyYang
* @since 10:30 2024/4/20
*/
@Data
@ApiModel("用户基本信息")
public class UserBasicInfoVO {

@ApiModelProperty("用户id")
private Long userId;

@ApiModelProperty("角色")
private RoleEnum role;

@ApiModelProperty("角色名称")
private String roleName;

@ApiModelProperty("用户真实姓名")
private String realName;

}

+ 48
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/model/vo/UserDetailVO.java View File

@@ -0,0 +1,48 @@
package com.ningdatech.kqapi.user.model.vo;

import com.ningdatech.kqapi.common.enumeration.RoleEnum;
import com.ningdatech.kqapi.user.model.enumerization.AccountStatus;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
* <p>
* UserDetailVO
* </p>
*
* @author WendyYang
* @since 09:35 2022/12/2
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class UserDetailVO {

@ApiModelProperty("用户id")
private Long userId;

@ApiModelProperty("用户姓名")
private String realName;

@ApiModelProperty("手机号")
private String phoneNo;

@ApiModelProperty("用户登陆名")
private String userName;

@ApiModelProperty("角色")
private RoleEnum role;

@ApiModelProperty("免冠照图片文件id")
private Long avatarFileId;

@ApiModelProperty("驾驶证信息")
private Long licenseOfDriver;

private AccountStatus accountStatus;

}

+ 28
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/service/IUserAuthService.java View File

@@ -0,0 +1,28 @@
package com.ningdatech.kqapi.user.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ningdatech.kqapi.user.model.entity.UserAuth;

import java.util.List;

/**
* <p>
* 服务类
* </p>
*
* @author Liuxinxin
* @since 2022-11-23
*/
public interface IUserAuthService extends IService<UserAuth> {

List<UserAuth> listByUserId(Long userId);

/**
* 删除用户授权信息
*
* @param userId 用户ID
* @author WendyYang
**/
void removeByUserId(Long userId);

}

+ 39
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/service/IUserInfoService.java View File

@@ -0,0 +1,39 @@
package com.ningdatech.kqapi.user.service;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ningdatech.kqapi.user.model.entity.UserInfo;
import com.ningdatech.kqapi.user.model.enumerization.AccountStatus;

import java.util.Collection;
import java.util.List;
import java.util.Optional;

/**
* <p>
* 服务类
* </p>
*
* @author Liuxinxin
* @since 2022-11-23
*/
public interface IUserInfoService extends IService<UserInfo> {

default String getRealName(Long userId) {
LambdaQueryWrapper<UserInfo> query = Wrappers.lambdaQuery(UserInfo.class)
.select(UserInfo::getRealName)
.eq(UserInfo::getId, userId);
return Optional.ofNullable(getOne(query))
.flatMap(w -> Optional.of(w.getRealName()))
.orElse(null);
}

default List<UserInfo> list(Collection<Long> userIds, AccountStatus accountStatus) {
LambdaQueryWrapper<UserInfo> uQuery = Wrappers.lambdaQuery(UserInfo.class)
.in(UserInfo::getId, userIds)
.eq(UserInfo::getAccountStatus, accountStatus);
return list(uQuery);
}

}

+ 33
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/service/impl/UserAuthServiceImpl.java View File

@@ -0,0 +1,33 @@
package com.ningdatech.kqapi.user.service.impl;

import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ningdatech.kqapi.user.model.entity.UserAuth;
import com.ningdatech.kqapi.user.mapper.UserAuthMapper;
import com.ningdatech.kqapi.user.service.IUserAuthService;
import org.springframework.stereotype.Service;

import java.util.List;

/**
* <p>
* 服务实现类
* </p>
*
* @author Liuxinxin
* @since 2022-11-23
*/
@Service
public class UserAuthServiceImpl extends ServiceImpl<UserAuthMapper, UserAuth> implements IUserAuthService {

@Override
public List<UserAuth> listByUserId(Long userId) {
return list(Wrappers.lambdaQuery(UserAuth.class).eq(UserAuth::getUserId, userId));
}

@Override
public void removeByUserId(Long userId) {
baseMapper.delete(Wrappers.lambdaQuery(UserAuth.class).eq(UserAuth::getUserId, userId));
}

}

+ 22
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/service/impl/UserInfoServiceImpl.java View File

@@ -0,0 +1,22 @@
package com.ningdatech.kqapi.user.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ningdatech.kqapi.user.model.entity.UserInfo;
import com.ningdatech.kqapi.user.mapper.UserInfoMapper;
import com.ningdatech.kqapi.user.service.IUserInfoService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

/**
* <p>
* 服务实现类
* </p>
*
* @author Liuxinxin
* @since 2022-11-23
*/
@Service
@RequiredArgsConstructor
public class UserInfoServiceImpl extends ServiceImpl<UserInfoMapper, UserInfo> implements IUserInfoService {

}

+ 81
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/util/BizUtils.java View File

@@ -0,0 +1,81 @@
package com.ningdatech.kqapi.user.util;

import cn.hutool.core.util.StrUtil;
import com.ningdatech.basic.exception.BizException;
import com.ningdatech.kqapi.common.constant.BizConst;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.temporal.ChronoUnit;
import java.util.function.Consumer;
import java.util.regex.Pattern;


/**
* <p>
* BizUtils-特殊的业务方法
* </p>
*
* @author WendyYang
* @since 20:59 2022/11/29
*/
public class BizUtils {

private BizUtils() {
}


public static <T> void notNull(T obj, Consumer<T> consumer) {
if (obj != null) {
consumer.accept(obj);
}
}

public static <T extends Number> void notNullOrZero(T number, Consumer<T> consumer) {
if (number != null && number.intValue() != 0) {
consumer.accept(number);
}
}

public static void notBlank(String str, Consumer<String> consumer) {
if (StrUtil.isNotBlank(str)) {
consumer.accept(str);
}
}

public static void password(String password) {
if (StrUtil.isBlank(password) || !Pattern.compile(BizConst.REGEX_PASS).matcher(password).matches()) {
throw BizException.wrap("请输入6-10位大小写字母或数字");
}
}

public static long getRestMillsToday() {
LocalDate now = LocalDate.now();
LocalDateTime currTime = now.atTime(LocalTime.now());
LocalDateTime nextDay = now.plusDays(1).atStartOfDay();
return ChronoUnit.MILLIS.between(currTime, nextDay);
}

/**
* 判断当前小时数是否在某个范围内
*
* @param time 时间
* @param start 开始小时数
* @param end 结束小时数
* @return boolean
* @author WendyYang
**/
public static boolean betweenHours(LocalDateTime time, int start, int end) {
if (time == null) {
return false;
}
int hour = time.getHour();
return hour >= start && end >= hour;
}

public static boolean isBetween(LocalDateTime targetTime, LocalDateTime startTime, LocalDateTime endTime) {
return targetTime.isAfter(startTime) && targetTime.isBefore(endTime);
}

}

+ 36
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/util/LoginUserContext.java View File

@@ -0,0 +1,36 @@
package com.ningdatech.kqapi.user.util;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
* <p>
* LoginUserContext
* </p>
*
* @author WendyYang
* @since 17:10 2023/2/24
*/
public class LoginUserContext {

private LoginUserContext() {
}

private static final String PROJECT_ID = "PROJECT_ID";

private static final ThreadLocal<Map<String, Object>> MAP = ThreadLocal.withInitial(() -> new HashMap<>(16));

public static List<Long> getProjectIds() {
return (List<Long>) MAP.get().get(PROJECT_ID);
}

public static void setProjectIds(List<Long> projectIds) {
MAP.get().put(PROJECT_ID, projectIds);
}

public static void clear() {
MAP.remove();
}

}

+ 25
- 0
kqapi/src/main/java/com/ningdatech/kqapi/user/util/LoginUserUtil.java View File

@@ -0,0 +1,25 @@
package com.ningdatech.kqapi.user.util;

import com.ningdatech.basic.auth.AbstractLoginUserUtil;
import com.ningdatech.kqapi.security.model.UserInfoDetails;

/**
* <p>
* 登录用户信息获取工具类
* </p>
*
* @author liuxinxin
* @since 12:26 2022/9/30
*/
public class LoginUserUtil extends AbstractLoginUserUtil {

/**
* 获取用户信息
*
* @return \
*/
public static UserInfoDetails loginUserDetail() {
return getLoginUserPrincipal();
}

}

+ 34
- 0
kqapi/src/main/resources/security/auth-dev.yml View File

@@ -0,0 +1,34 @@
security:
auth:
auth-require-url: /api/v1/user/auth/auth-require
invalid-session-url: /api/v1/user/auth/invalid-session
password-login-url: /api/v1/user/auth/login/password
logout-url: /api/v1/user/auth/logout
ignore-auth-urls:
- /v2/api-docs
- /swagger-ui.html
- /webjars/**
- /swagger-resources/**
- /webjars/
- /api/v1/user/auth/register
- /api/v1/user/auth/auth-require
- /api/v1/user/auth/invalid-session
- /api/v1/user/auth/login/password
- /api/v1/user/auth/forget-password
- /doc.html
- /ok.html
- /open/api/**
- /api/v1/wechat/**
ignore-csrf-urls:
- /api/v1/user/auth/**
- /v2/api-docs
- /swagger-ui.html
- /webjars/**
- /swagger-resources/**
- /webjars/
- /doc.html
- /ok.html
- /api/v1/**
- /file/**
- /optLog/**
- /dict/**

+ 39
- 0
kqapi/src/main/resources/security/auth-prod.yml View File

@@ -0,0 +1,39 @@
security:
auth:
auth-require-url: /api/v1/user/auth/auth-require
invalid-session-url: /api/v1/user/auth/invalid-session
password-login-url: /api/v1/user/auth/login/password
logout-url: /api/v1/user/auth/logout
ignore-auth-urls:
- /v2/api-docs
- /swagger-ui.html
- /webjars/**
- /swagger-resources/**
- /webjars/
- /api/v1/user/auth/register
- /api/v1/user/auth/login/password
- /api/v1/user/auth/forget-password
- /doc.html
- /ok.html
- /api/v1/wechat/**
ignore-csrf-urls:
- /api/v1/user/auth/**
- /v2/api-docs
- /swagger-ui.html
- /webjars/**
- /swagger-resources/**
- /webjars/
- /doc.html
- /ok.html
- /api/v1/**
- /file/**
- /optLog/**
- /dict/**
- /api/v1/wechat/**
role-map:
"engineer":
"project_manager":
"enterprise_admin":
"regional_general_manager":
"driver":
"super_admin":

+ 45
- 0
kqapi/target/classes/META-INF/spring-configuration-metadata.json View File

@@ -9,6 +9,11 @@
"name": "provincial",
"type": "com.ningdatech.kqapi.common.config.ProvincialProperties",
"sourceType": "com.ningdatech.kqapi.common.config.ProvincialProperties"
},
{
"name": "security.auth",
"type": "com.ningdatech.kqapi.security.AuthProperties",
"sourceType": "com.ningdatech.kqapi.security.AuthProperties"
}
],
"properties": [
@@ -46,6 +51,46 @@
"name": "provincial.secret",
"type": "java.lang.String",
"sourceType": "com.ningdatech.kqapi.common.config.ProvincialProperties"
},
{
"name": "security.auth.auth-require-url",
"type": "java.lang.String",
"sourceType": "com.ningdatech.kqapi.security.AuthProperties"
},
{
"name": "security.auth.ignore-auth-urls",
"type": "java.util.List<java.lang.String>",
"sourceType": "com.ningdatech.kqapi.security.AuthProperties"
},
{
"name": "security.auth.ignore-csrf-urls",
"type": "java.util.List<java.lang.String>",
"sourceType": "com.ningdatech.kqapi.security.AuthProperties"
},
{
"name": "security.auth.invalid-session-url",
"type": "java.lang.String",
"sourceType": "com.ningdatech.kqapi.security.AuthProperties"
},
{
"name": "security.auth.logout-url",
"type": "java.lang.String",
"sourceType": "com.ningdatech.kqapi.security.AuthProperties"
},
{
"name": "security.auth.password-login-url",
"type": "java.lang.String",
"sourceType": "com.ningdatech.kqapi.security.AuthProperties"
},
{
"name": "security.auth.post-only-by-login",
"type": "java.lang.Boolean",
"sourceType": "com.ningdatech.kqapi.security.AuthProperties"
},
{
"name": "security.auth.role-map",
"type": "java.util.Map<java.lang.String,java.util.List<java.lang.String>>",
"sourceType": "com.ningdatech.kqapi.security.AuthProperties"
}
],
"hints": []

BIN
kqapi/target/classes/com/ningdatech/kqapi/common/handler/GlobalExceptionHandler.class View File


+ 0
- 42
logs/error-20231031-0.log View File

@@ -1,42 +0,0 @@
2023-10-31 09:35:05.049 [restartedMain] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'ndKqZzsfwMenuController': Resolution of declared constructors on bean Class [com.ningdatech.kqapi.zzsfw.controller.NdKqZzsfwMenuController] from ClassLoader [org.springframework.boot.devtools.restart.classloader.RestartClassLoader@23fc2085] failed; nested exception is java.lang.NoClassDefFoundError: com/ningdatech/kqapi/zzsfw/manage/MatterManage
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:309)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineConstructorsFromBeanPostProcessors(AbstractAutowireCapableBeanFactory.java:1302)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1219)
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at com.ningdatech.kqapi.App.main(App.java:31)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: java.lang.NoClassDefFoundError: com/ningdatech/kqapi/zzsfw/manage/MatterManage
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)
at java.lang.Class.getDeclaredConstructors(Class.java:2020)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:304)
... 23 common frames omitted
Caused by: java.lang.ClassNotFoundException: com.ningdatech.kqapi.zzsfw.manage.MatterManage
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.springframework.boot.devtools.restart.classloader.RestartClassLoader.loadClass(RestartClassLoader.java:145)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 27 common frames omitted

+ 0
- 73
logs/error-20231102-0.log View File

@@ -1,73 +0,0 @@
2023-11-02 11:03:02.248 [http-nio-33060-Acceptor] ERROR org.apache.tomcat.util.net.Acceptor -Socket accept failed
java.nio.channels.AsynchronousCloseException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:205)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:257)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:547)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:79)
at org.apache.tomcat.util.net.Acceptor.run(Acceptor.java:129)
at java.lang.Thread.run(Thread.java:748)
2023-11-02 11:03:02.982 [restartedMain] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'ndKqZzsfwMenuController': Resolution of declared constructors on bean Class [com.ningdatech.kqapi.zzsfw.controller.NdKqZzsfwMenuController] from ClassLoader [org.springframework.boot.devtools.restart.classloader.RestartClassLoader@3f5d98fd] failed; nested exception is java.lang.NoClassDefFoundError: com/ningdatech/kqapi/zzsfw/manage/MatterManage
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:309)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineConstructorsFromBeanPostProcessors(AbstractAutowireCapableBeanFactory.java:1302)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1219)
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at com.ningdatech.kqapi.App.main(App.java:31)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: java.lang.NoClassDefFoundError: com/ningdatech/kqapi/zzsfw/manage/MatterManage
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)
at java.lang.Class.getDeclaredConstructors(Class.java:2020)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:304)
... 23 common frames omitted
Caused by: java.lang.ClassNotFoundException: com.ningdatech.kqapi.zzsfw.manage.MatterManage
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.springframework.boot.devtools.restart.classloader.RestartClassLoader.loadClass(RestartClassLoader.java:145)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 27 common frames omitted
2023-11-02 11:55:26.170 [http-nio-33060-Acceptor] ERROR org.apache.tomcat.util.net.Acceptor -Socket accept failed
java.nio.channels.AsynchronousCloseException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:205)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:257)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:547)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:79)
at org.apache.tomcat.util.net.Acceptor.run(Acceptor.java:129)
at java.lang.Thread.run(Thread.java:748)
2023-11-02 11:55:27.074 [restartedMain] ERROR o.s.b.d.LoggingFailureAnalysisReporter -

***************************
APPLICATION FAILED TO START
***************************

Description:

Parameter 0 of constructor in com.ningdatech.kqapi.zzsfw.controller.NdKqZzsfwMenuController required a bean of type 'com.ningdatech.kqapi.zzsfw.manage.MatterManage' that could not be found.


Action:

Consider defining a bean of type 'com.ningdatech.kqapi.zzsfw.manage.MatterManage' in your configuration.


+ 0
- 388
logs/error-20240103-0.log View File

@@ -1,388 +0,0 @@
2024-01-03 12:01:55.535 [restartedMain] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mattersCacheHelperImpl' defined in file [D:\ningda\kq-value-added-project\kqapi\target\classes\com\ningdatech\kqapi\common\helper\impl\MattersCacheHelperImpl.class]: Invocation of init method failed; nested exception is org.springframework.dao.TransientDataAccessResourceException:
### Error querying database. Cause: java.sql.SQLException: Java heap space
### The error may exist in com/ningdatech/kqapi/zzsfw/mapper/DscSxAdsShareItemQltQlsxCommonIDVKqMapper.java (best guess)
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT rowguid,update_date,update_type,ql_kind,ql_mainitem_id,ql_subitem_id,shiquancj,belongxiaqucode,ql_dep_orgcdoe,itemsource,version_number,version_date,ql_effect_time,ql_inner_code,ql_name,ql_state,lawbasis,anticipate_day,anticipate_type,promise_day,applyermin_count,is_pilot,ql_dep,lead_dept,bjtype,benjispxz,handle_frequency,xingzhenxdrxz,apply_condition,banjian_finishfiles,link_tel,supervise_tel,webapplyurl,webconsulturl,charge_flag,charge_basis,rightclass_qiyezt,rightclass_qiyedx,rightclass_gerensx,rightclass_gerendx,in_flow_info,material_info,material_case_info,chargeitem_info,qa_info,accept_address_info,sync_sign,sync_date,sync_error_desc,ouorgcode,ouguid,farenurl,gerenflag,is_tongjian,ql_full_id,entrust,entrustdes,applyermin_count_desc,outypecode,out_flow_desc,banjian_finishtype,is_specialpro,state2,nosuit_apply,is_unifydo,is_upunify,ql_att,baknote,webapplymode,itemsourcetype,is_simplepunish,is_levywaiver,feebasis,fact_info,is_cs,unifydodes,is_vlb,nounify_do,ql_inner_code_item,is_touzip,hangyeclasstype,ql_sub_kind,appwebapplyurl,appappointmenturl,appointmenturl,is_webappointment,webappointmentperiod,maincontext,do_dept,relatedguid,related,is_express,service_sub_kind,ispyc,lbsx,out_flow_url,acp_institution,dec_institution,content_involve,applicable_object,xingzhenxdrxy,count_limit,count_note,ban_requirement,shixiangsctype,shixiangsclx,apply_type,apply_type_tel,apply_type_mail,apply_type_fax,handle_type,mbfarenadd,mbgerenflag,destime,service_mode,service_day,ununifydo_other,ishasownflow,dt,dsc_city,dsc_adm_region,dsc_sydep_code,dsc_sydep_name,dsc_sydep_sys,dsc_sydep_tblname,dsc_biz_record_id,dsc_biz_operation,dsc_biz_timestamp,dsc_datasr_tblname,dsc_hash_unique,dsc_clean_timestamp,dsc_dw_rksj FROM dsc_sx_ads_share_item_qlt_qlsx_common_i_d_v_kq WHERE (webapplyurl IS NOT NULL)
### Cause: java.sql.SQLException: Java heap space
; Java heap space; nested exception is java.sql.SQLException: Java heap space
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620)
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:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at com.ningdatech.kqapi.App.main(App.java:31)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: org.springframework.dao.TransientDataAccessResourceException:
### Error querying database. Cause: java.sql.SQLException: Java heap space
### The error may exist in com/ningdatech/kqapi/zzsfw/mapper/DscSxAdsShareItemQltQlsxCommonIDVKqMapper.java (best guess)
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT rowguid,update_date,update_type,ql_kind,ql_mainitem_id,ql_subitem_id,shiquancj,belongxiaqucode,ql_dep_orgcdoe,itemsource,version_number,version_date,ql_effect_time,ql_inner_code,ql_name,ql_state,lawbasis,anticipate_day,anticipate_type,promise_day,applyermin_count,is_pilot,ql_dep,lead_dept,bjtype,benjispxz,handle_frequency,xingzhenxdrxz,apply_condition,banjian_finishfiles,link_tel,supervise_tel,webapplyurl,webconsulturl,charge_flag,charge_basis,rightclass_qiyezt,rightclass_qiyedx,rightclass_gerensx,rightclass_gerendx,in_flow_info,material_info,material_case_info,chargeitem_info,qa_info,accept_address_info,sync_sign,sync_date,sync_error_desc,ouorgcode,ouguid,farenurl,gerenflag,is_tongjian,ql_full_id,entrust,entrustdes,applyermin_count_desc,outypecode,out_flow_desc,banjian_finishtype,is_specialpro,state2,nosuit_apply,is_unifydo,is_upunify,ql_att,baknote,webapplymode,itemsourcetype,is_simplepunish,is_levywaiver,feebasis,fact_info,is_cs,unifydodes,is_vlb,nounify_do,ql_inner_code_item,is_touzip,hangyeclasstype,ql_sub_kind,appwebapplyurl,appappointmenturl,appointmenturl,is_webappointment,webappointmentperiod,maincontext,do_dept,relatedguid,related,is_express,service_sub_kind,ispyc,lbsx,out_flow_url,acp_institution,dec_institution,content_involve,applicable_object,xingzhenxdrxy,count_limit,count_note,ban_requirement,shixiangsctype,shixiangsclx,apply_type,apply_type_tel,apply_type_mail,apply_type_fax,handle_type,mbfarenadd,mbgerenflag,destime,service_mode,service_day,ununifydo_other,ishasownflow,dt,dsc_city,dsc_adm_region,dsc_sydep_code,dsc_sydep_name,dsc_sydep_sys,dsc_sydep_tblname,dsc_biz_record_id,dsc_biz_operation,dsc_biz_timestamp,dsc_datasr_tblname,dsc_hash_unique,dsc_clean_timestamp,dsc_dw_rksj FROM dsc_sx_ads_share_item_qlt_qlsx_common_i_d_v_kq WHERE (webapplyurl IS NOT NULL)
### Cause: java.sql.SQLException: Java heap space
; Java heap space; nested exception is java.sql.SQLException: Java heap space
at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:110)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:70)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79)
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:91)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:441)
at com.sun.proxy.$Proxy89.selectList(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy96.selectList(Unknown Source)
at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:370)
at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)
at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704)
at com.ningdatech.kqapi.zzsfw.service.impl.DscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl$$EnhancerBySpringCGLIB$$c85ff11a.list(<generated>)
at com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper.initMatterCache(AbstractMatterCacheHelper.java:45)
at com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper.afterPropertiesSet(AbstractMatterCacheHelper.java:117)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800)
... 21 common frames omitted
Caused by: java.sql.SQLException: Java heap space
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:916)
at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59)
at com.sun.proxy.$Proxy101.execute(Unknown Source)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:64)
at com.sun.proxy.$Proxy99.query(Unknown Source)
at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63)
at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325)
at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62)
at com.sun.proxy.$Proxy98.query(Unknown Source)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427)
... 39 common frames omitted
Caused by: java.lang.OutOfMemoryError: Java heap space
at com.mysql.cj.protocol.a.SimplePacketReader.readMessageLocal(SimplePacketReader.java:133)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessage(SimplePacketReader.java:102)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessage(SimplePacketReader.java:45)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readMessage(TimeTrackingPacketReader.java:62)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readMessage(TimeTrackingPacketReader.java:41)
at com.mysql.cj.protocol.a.MultiPacketReader.readMessage(MultiPacketReader.java:66)
at com.mysql.cj.protocol.a.MultiPacketReader.readMessage(MultiPacketReader.java:44)
at com.mysql.cj.protocol.a.ResultsetRowReader.read(ResultsetRowReader.java:75)
at com.mysql.cj.protocol.a.ResultsetRowReader.read(ResultsetRowReader.java:42)
at com.mysql.cj.protocol.a.NativeProtocol.read(NativeProtocol.java:1651)
at com.mysql.cj.protocol.a.TextResultsetReader.read(TextResultsetReader.java:87)
at com.mysql.cj.protocol.a.TextResultsetReader.read(TextResultsetReader.java:48)
at com.mysql.cj.protocol.a.NativeProtocol.read(NativeProtocol.java:1664)
at com.mysql.cj.protocol.a.NativeProtocol.readAllResults(NativeProtocol.java:1718)
at com.mysql.cj.protocol.a.NativeProtocol.sendQueryPacket(NativeProtocol.java:1064)
at com.mysql.cj.NativeSession.execSQL(NativeSession.java:665)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:893)
at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59)
at com.sun.proxy.$Proxy101.execute(Unknown Source)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
2024-01-03 14:05:05.622 [http-nio-33060-exec-2] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] -Servlet.service() for servlet [dispatcherServlet] in context with path [/kq] threw exception [Request processing failed; nested exception is org.springframework.dao.RecoverableDataAccessException:
### Error querying database. Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 161,119 milliseconds ago. The last packet sent successfully to the server was 161,134 milliseconds ago.
### The error may exist in com/ningdatech/kqapi/zzsfw/mapper/DscSxAdsShareItemQltQlsxCommonIDVKqMapper.java (best guess)
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT rowguid,update_date,update_type,ql_kind,ql_mainitem_id,ql_subitem_id,shiquancj,belongxiaqucode,ql_dep_orgcdoe,itemsource,version_number,version_date,ql_effect_time,ql_inner_code,ql_name,ql_state,lawbasis,anticipate_day,anticipate_type,promise_day,applyermin_count,is_pilot,ql_dep,lead_dept,bjtype,benjispxz,handle_frequency,xingzhenxdrxz,apply_condition,banjian_finishfiles,link_tel,supervise_tel,webapplyurl,webconsulturl,charge_flag,charge_basis,rightclass_qiyezt,rightclass_qiyedx,rightclass_gerensx,rightclass_gerendx,in_flow_info,material_info,material_case_info,chargeitem_info,qa_info,accept_address_info,sync_sign,sync_date,sync_error_desc,ouorgcode,ouguid,farenurl,gerenflag,is_tongjian,ql_full_id,entrust,entrustdes,applyermin_count_desc,outypecode,out_flow_desc,banjian_finishtype,is_specialpro,state2,nosuit_apply,is_unifydo,is_upunify,ql_att,baknote,webapplymode,itemsourcetype,is_simplepunish,is_levywaiver,feebasis,fact_info,is_cs,unifydodes,is_vlb,nounify_do,ql_inner_code_item,is_touzip,hangyeclasstype,ql_sub_kind,appwebapplyurl,appappointmenturl,appointmenturl,is_webappointment,webappointmentperiod,maincontext,do_dept,relatedguid,related,is_express,service_sub_kind,ispyc,lbsx,out_flow_url,acp_institution,dec_institution,content_involve,applicable_object,xingzhenxdrxy,count_limit,count_note,ban_requirement,shixiangsctype,shixiangsclx,apply_type,apply_type_tel,apply_type_mail,apply_type_fax,handle_type,mbfarenadd,mbgerenflag,destime,service_mode,service_day,ununifydo_other,ishasownflow,dt,dsc_city,dsc_adm_region,dsc_sydep_code,dsc_sydep_name,dsc_sydep_sys,dsc_sydep_tblname,dsc_biz_record_id,dsc_biz_operation,dsc_biz_timestamp,dsc_datasr_tblname,dsc_hash_unique,dsc_clean_timestamp,dsc_dw_rksj FROM dsc_sx_ads_share_item_qlt_qlsx_common_i_d_v_kq WHERE (ql_name = ? AND webapplyurl IS NOT NULL) limit 1
### Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 161,119 milliseconds ago. The last packet sent successfully to the server was 161,134 milliseconds ago.
; Communications link failure

The last packet successfully received from the server was 161,119 milliseconds ago. The last packet sent successfully to the server was 161,134 milliseconds ago.; nested exception is com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 161,119 milliseconds ago. The last packet sent successfully to the server was 161,134 milliseconds ago.] with root cause
java.net.SocketException: Socket closed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at com.mysql.cj.protocol.ReadAheadInputStream.fill(ReadAheadInputStream.java:107)
at com.mysql.cj.protocol.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:150)
at com.mysql.cj.protocol.ReadAheadInputStream.read(ReadAheadInputStream.java:180)
at java.io.FilterInputStream.read(FilterInputStream.java:133)
at com.mysql.cj.protocol.FullReadInputStream.readFully(FullReadInputStream.java:64)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessageLocal(SimplePacketReader.java:137)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessage(SimplePacketReader.java:102)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessage(SimplePacketReader.java:45)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readMessage(TimeTrackingPacketReader.java:62)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readMessage(TimeTrackingPacketReader.java:41)
at com.mysql.cj.protocol.a.MultiPacketReader.readMessage(MultiPacketReader.java:66)
at com.mysql.cj.protocol.a.MultiPacketReader.readMessage(MultiPacketReader.java:44)
at com.mysql.cj.protocol.a.NativeProtocol.readMessage(NativeProtocol.java:576)
at com.mysql.cj.protocol.a.ColumnDefinitionReader.read(ColumnDefinitionReader.java:72)
at com.mysql.cj.protocol.a.ColumnDefinitionReader.read(ColumnDefinitionReader.java:40)
at com.mysql.cj.protocol.a.NativeProtocol.read(NativeProtocol.java:1651)
at com.mysql.cj.protocol.a.TextResultsetReader.read(TextResultsetReader.java:68)
at com.mysql.cj.protocol.a.TextResultsetReader.read(TextResultsetReader.java:48)
at com.mysql.cj.protocol.a.NativeProtocol.read(NativeProtocol.java:1664)
at com.mysql.cj.protocol.a.NativeProtocol.readAllResults(NativeProtocol.java:1718)
at com.mysql.cj.protocol.a.NativeProtocol.sendQueryPacket(NativeProtocol.java:1064)
at com.mysql.cj.NativeSession.execSQL(NativeSession.java:665)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:893)
at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59)
at com.sun.proxy.$Proxy102.execute(Unknown Source)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:64)
at com.sun.proxy.$Proxy100.query(Unknown Source)
at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63)
at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325)
at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62)
at com.sun.proxy.$Proxy99.query(Unknown Source)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427)
at com.sun.proxy.$Proxy89.selectList(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy96.selectList(Unknown Source)
at com.baomidou.mybatisplus.core.mapper.BaseMapper.selectOne(BaseMapper.java:173)
at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$DefaultMethodInvoker.invoke(MybatisMapperProxy.java:162)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy96.selectOne(Unknown Source)
at com.baomidou.mybatisplus.extension.service.impl.ServiceImpl.getOne(ServiceImpl.java:202)
at com.baomidou.mybatisplus.extension.service.IService.getOne(IService.java:320)
at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)
at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704)
at com.ningdatech.kqapi.zzsfw.service.impl.DscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl$$EnhancerBySpringCGLIB$$376d737b.getOne(<generated>)
at com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper.lambda$afterPropertiesSet$1(AbstractMatterCacheHelper.java:87)
at com.github.benmanes.caffeine.cache.LocalLoadingCache.lambda$newMappingFunction$2(LocalLoadingCache.java:145)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.lambda$doComputeIfAbsent$14(BoundedLocalCache.java:2406)
at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1853)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.doComputeIfAbsent(BoundedLocalCache.java:2404)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.computeIfAbsent(BoundedLocalCache.java:2387)
at com.github.benmanes.caffeine.cache.LocalCache.computeIfAbsent(LocalCache.java:108)
at com.github.benmanes.caffeine.cache.LocalLoadingCache.get(LocalLoadingCache.java:56)
at com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper.getUrl(AbstractMatterCacheHelper.java:74)
at com.ningdatech.kqapi.common.helper.impl.MattersCacheHelperImpl.getUrl(MattersCacheHelperImpl.java:34)
at com.ningdatech.kqapi.zzsfw.manage.MatterManage.synData(MatterManage.java:168)
at com.ningdatech.kqapi.zzsfw.controller.NdKqZzsfwMenuController.synData(NdKqZzsfwMenuController.java:76)
at com.ningdatech.kqapi.zzsfw.controller.NdKqZzsfwMenuController$$FastClassBySpringCGLIB$$943ee7ef.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
at org.springframework.validation.beanvalidation.MethodValidationInterceptor.invoke(MethodValidationInterceptor.java:123)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708)
at com.ningdatech.kqapi.zzsfw.controller.NdKqZzsfwMenuController$$EnhancerBySpringCGLIB$$814133e1.synData(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1070)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2024-01-03 14:59:50.023 [restartedMain] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mattersCacheHelperImpl': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper] from ClassLoader [org.springframework.boot.devtools.restart.classloader.RestartClassLoader@5aa49f65]
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:289)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineConstructorsFromBeanPostProcessors(AbstractAutowireCapableBeanFactory.java:1302)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1219)
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at com.ningdatech.kqapi.App.main(App.java:31)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: java.lang.IllegalStateException: Failed to introspect Class [com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper] from ClassLoader [org.springframework.boot.devtools.restart.classloader.RestartClassLoader@5aa49f65]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:485)
at org.springframework.util.ReflectionUtils.doWithLocalMethods(ReflectionUtils.java:321)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:267)
... 23 common frames omitted
Caused by: java.lang.NoClassDefFoundError: com/ningdatech/kqapi/zzsfw/entity/entity/DscSxAdsShareItemQltQlsxCommonIDVKq
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.getDeclaredMethods(Class.java:1975)
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:467)
... 25 common frames omitted
Caused by: java.lang.ClassNotFoundException: com.ningdatech.kqapi.zzsfw.entity.entity.DscSxAdsShareItemQltQlsxCommonIDVKq
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.springframework.boot.devtools.restart.classloader.RestartClassLoader.loadClass(RestartClassLoader.java:145)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 29 common frames omitted
2024-01-03 18:23:57.757 [restartedMain] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mattersCacheHelperImpl': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper] from ClassLoader [org.springframework.boot.devtools.restart.classloader.RestartClassLoader@61eb5120]
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:289)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineConstructorsFromBeanPostProcessors(AbstractAutowireCapableBeanFactory.java:1302)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1219)
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at com.ningdatech.kqapi.App.main(App.java:31)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: java.lang.IllegalStateException: Failed to introspect Class [com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper] from ClassLoader [org.springframework.boot.devtools.restart.classloader.RestartClassLoader@61eb5120]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:485)
at org.springframework.util.ReflectionUtils.doWithLocalMethods(ReflectionUtils.java:321)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:267)
... 23 common frames omitted
Caused by: java.lang.NoClassDefFoundError: com/ningdatech/kqapi/zzsfw/entity/entity/DscSxAdsShareItemQltQlsxCommonIDVKq
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.getDeclaredMethods(Class.java:1975)
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:467)
... 25 common frames omitted
Caused by: java.lang.ClassNotFoundException: com.ningdatech.kqapi.zzsfw.entity.entity.DscSxAdsShareItemQltQlsxCommonIDVKq
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.springframework.boot.devtools.restart.classloader.RestartClassLoader.loadClass(RestartClassLoader.java:145)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 29 common frames omitted

+ 0
- 643
logs/error-20240104-0.log View File

@@ -1,643 +0,0 @@
2024-01-04 09:22:29.153 [http-nio-33060-exec-2] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] -Servlet.service() for servlet [dispatcherServlet] in context with path [/kq] threw exception [Request processing failed; nested exception is org.springframework.dao.TransientDataAccessResourceException:
### Error querying database. Cause: java.sql.SQLException: Socket closed
### The error may exist in com/ningdatech/kqapi/zzsfw/mapper/DscSxAdsShareItemQltQlsxCommonIDVKqMapper.java (best guess)
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT rowguid,ql_name,webapplyurl FROM dsc_sx_ads_share_item_qlt_qlsx_common_i_d_v_kq WHERE (webapplyurl IS NOT NULL)
### Cause: java.sql.SQLException: Socket closed
; Socket closed; nested exception is java.sql.SQLException: Socket closed] with root cause
java.net.SocketException: Socket closed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at com.mysql.cj.protocol.ReadAheadInputStream.fill(ReadAheadInputStream.java:107)
at com.mysql.cj.protocol.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:150)
at com.mysql.cj.protocol.ReadAheadInputStream.read(ReadAheadInputStream.java:180)
at java.io.FilterInputStream.read(FilterInputStream.java:133)
at com.mysql.cj.protocol.FullReadInputStream.readFully(FullReadInputStream.java:64)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessageLocal(SimplePacketReader.java:137)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessage(SimplePacketReader.java:102)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessage(SimplePacketReader.java:45)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readMessage(TimeTrackingPacketReader.java:62)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readMessage(TimeTrackingPacketReader.java:41)
at com.mysql.cj.protocol.a.MultiPacketReader.readMessage(MultiPacketReader.java:66)
at com.mysql.cj.protocol.a.MultiPacketReader.readMessage(MultiPacketReader.java:44)
at com.mysql.cj.protocol.a.ResultsetRowReader.read(ResultsetRowReader.java:75)
at com.mysql.cj.protocol.a.ResultsetRowReader.read(ResultsetRowReader.java:42)
at com.mysql.cj.protocol.a.NativeProtocol.read(NativeProtocol.java:1651)
at com.mysql.cj.protocol.a.TextResultsetReader.read(TextResultsetReader.java:87)
at com.mysql.cj.protocol.a.TextResultsetReader.read(TextResultsetReader.java:48)
at com.mysql.cj.protocol.a.NativeProtocol.read(NativeProtocol.java:1664)
at com.mysql.cj.protocol.a.NativeProtocol.readAllResults(NativeProtocol.java:1718)
at com.mysql.cj.protocol.a.NativeProtocol.sendQueryPacket(NativeProtocol.java:1064)
at com.mysql.cj.NativeSession.execSQL(NativeSession.java:665)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:893)
at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59)
at com.sun.proxy.$Proxy124.execute(Unknown Source)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:64)
at com.sun.proxy.$Proxy122.query(Unknown Source)
at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63)
at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325)
at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62)
at com.sun.proxy.$Proxy121.query(Unknown Source)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427)
at com.sun.proxy.$Proxy89.selectList(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy96.selectList(Unknown Source)
at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:370)
at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)
at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704)
at com.ningdatech.kqapi.zzsfw.service.impl.DscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl$$EnhancerBySpringCGLIB$$e742cfd4.list(<generated>)
at com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper.initMatterCache(AbstractMatterCacheHelper.java:47)
at com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper.init(AbstractMatterCacheHelper.java:146)
at com.ningdatech.kqapi.common.helper.impl.MattersCacheHelperImpl.refreshAll(MattersCacheHelperImpl.java:44)
at com.ningdatech.kqapi.scheduler.task.SynTask.synData(SynTask.java:74)
at com.ningdatech.kqapi.scheduler.controller.TaskController.synMenu(TaskController.java:58)
at com.ningdatech.kqapi.scheduler.controller.TaskController$$FastClassBySpringCGLIB$$77ce55ac.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
at org.springframework.validation.beanvalidation.MethodValidationInterceptor.invoke(MethodValidationInterceptor.java:123)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708)
at com.ningdatech.kqapi.scheduler.controller.TaskController$$EnhancerBySpringCGLIB$$1494fee7.synMenu(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1070)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2024-01-04 09:22:29.153 [http-nio-33060-exec-1] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] -Servlet.service() for servlet [dispatcherServlet] in context with path [/kq] threw exception [Request processing failed; nested exception is org.springframework.dao.RecoverableDataAccessException:
### Error querying database. Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 200,393 milliseconds ago. The last packet sent successfully to the server was 200,409 milliseconds ago.
### The error may exist in com/ningdatech/kqapi/zzsfw/mapper/DscSxAdsShareItemQltQlsxCommonIDVKqMapper.java (best guess)
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT rowguid,update_date,update_type,ql_kind,ql_mainitem_id,ql_subitem_id,shiquancj,belongxiaqucode,ql_dep_orgcdoe,itemsource,version_number,version_date,ql_effect_time,ql_inner_code,ql_name,ql_state,lawbasis,anticipate_day,anticipate_type,promise_day,applyermin_count,is_pilot,ql_dep,lead_dept,bjtype,benjispxz,handle_frequency,xingzhenxdrxz,apply_condition,banjian_finishfiles,link_tel,supervise_tel,webapplyurl,webconsulturl,charge_flag,charge_basis,rightclass_qiyezt,rightclass_qiyedx,rightclass_gerensx,rightclass_gerendx,in_flow_info,material_info,material_case_info,chargeitem_info,qa_info,accept_address_info,sync_sign,sync_date,sync_error_desc,ouorgcode,ouguid,farenurl,gerenflag,is_tongjian,ql_full_id,entrust,entrustdes,applyermin_count_desc,outypecode,out_flow_desc,banjian_finishtype,is_specialpro,state2,nosuit_apply,is_unifydo,is_upunify,ql_att,baknote,webapplymode,itemsourcetype,is_simplepunish,is_levywaiver,feebasis,fact_info,is_cs,unifydodes,is_vlb,nounify_do,ql_inner_code_item,is_touzip,hangyeclasstype,ql_sub_kind,appwebapplyurl,appappointmenturl,appointmenturl,is_webappointment,webappointmentperiod,maincontext,do_dept,relatedguid,related,is_express,service_sub_kind,ispyc,lbsx,out_flow_url,acp_institution,dec_institution,content_involve,applicable_object,xingzhenxdrxy,count_limit,count_note,ban_requirement,shixiangsctype,shixiangsclx,apply_type,apply_type_tel,apply_type_mail,apply_type_fax,handle_type,mbfarenadd,mbgerenflag,destime,service_mode,service_day,ununifydo_other,ishasownflow,dt,dsc_city,dsc_adm_region,dsc_sydep_code,dsc_sydep_name,dsc_sydep_sys,dsc_sydep_tblname,dsc_biz_record_id,dsc_biz_operation,dsc_biz_timestamp,dsc_datasr_tblname,dsc_hash_unique,dsc_clean_timestamp,dsc_dw_rksj FROM dsc_sx_ads_share_item_qlt_qlsx_common_i_d_v_kq WHERE (ql_name = ? AND webapplyurl IS NOT NULL) limit 1
### Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 200,393 milliseconds ago. The last packet sent successfully to the server was 200,409 milliseconds ago.
; Communications link failure

The last packet successfully received from the server was 200,393 milliseconds ago. The last packet sent successfully to the server was 200,409 milliseconds ago.; nested exception is com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 200,393 milliseconds ago. The last packet sent successfully to the server was 200,409 milliseconds ago.] with root cause
java.net.SocketException: Socket closed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at com.mysql.cj.protocol.ReadAheadInputStream.fill(ReadAheadInputStream.java:107)
at com.mysql.cj.protocol.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:150)
at com.mysql.cj.protocol.ReadAheadInputStream.read(ReadAheadInputStream.java:180)
at java.io.FilterInputStream.read(FilterInputStream.java:133)
at com.mysql.cj.protocol.FullReadInputStream.readFully(FullReadInputStream.java:64)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessageLocal(SimplePacketReader.java:137)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessage(SimplePacketReader.java:102)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessage(SimplePacketReader.java:45)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readMessage(TimeTrackingPacketReader.java:62)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readMessage(TimeTrackingPacketReader.java:41)
at com.mysql.cj.protocol.a.MultiPacketReader.readMessage(MultiPacketReader.java:66)
at com.mysql.cj.protocol.a.MultiPacketReader.readMessage(MultiPacketReader.java:44)
at com.mysql.cj.protocol.a.NativeProtocol.readMessage(NativeProtocol.java:576)
at com.mysql.cj.protocol.a.ColumnDefinitionReader.read(ColumnDefinitionReader.java:72)
at com.mysql.cj.protocol.a.ColumnDefinitionReader.read(ColumnDefinitionReader.java:40)
at com.mysql.cj.protocol.a.NativeProtocol.read(NativeProtocol.java:1651)
at com.mysql.cj.protocol.a.TextResultsetReader.read(TextResultsetReader.java:68)
at com.mysql.cj.protocol.a.TextResultsetReader.read(TextResultsetReader.java:48)
at com.mysql.cj.protocol.a.NativeProtocol.read(NativeProtocol.java:1664)
at com.mysql.cj.protocol.a.NativeProtocol.readAllResults(NativeProtocol.java:1718)
at com.mysql.cj.protocol.a.NativeProtocol.sendQueryPacket(NativeProtocol.java:1064)
at com.mysql.cj.NativeSession.execSQL(NativeSession.java:665)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:893)
at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59)
at com.sun.proxy.$Proxy124.execute(Unknown Source)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:64)
at com.sun.proxy.$Proxy122.query(Unknown Source)
at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63)
at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325)
at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62)
at com.sun.proxy.$Proxy121.query(Unknown Source)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427)
at com.sun.proxy.$Proxy89.selectList(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy96.selectList(Unknown Source)
at com.baomidou.mybatisplus.core.mapper.BaseMapper.selectOne(BaseMapper.java:173)
at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$DefaultMethodInvoker.invoke(MybatisMapperProxy.java:162)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy96.selectOne(Unknown Source)
at com.baomidou.mybatisplus.extension.service.impl.ServiceImpl.getOne(ServiceImpl.java:202)
at com.baomidou.mybatisplus.extension.service.IService.getOne(IService.java:320)
at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)
at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704)
at com.ningdatech.kqapi.zzsfw.service.impl.DscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl$$EnhancerBySpringCGLIB$$e742cfd4.getOne(<generated>)
at com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper.lambda$init$3(AbstractMatterCacheHelper.java:121)
at com.github.benmanes.caffeine.cache.LocalLoadingCache.lambda$newMappingFunction$2(LocalLoadingCache.java:145)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.lambda$doComputeIfAbsent$14(BoundedLocalCache.java:2406)
at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1853)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.doComputeIfAbsent(BoundedLocalCache.java:2404)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.computeIfAbsent(BoundedLocalCache.java:2387)
at com.github.benmanes.caffeine.cache.LocalCache.computeIfAbsent(LocalCache.java:108)
at com.github.benmanes.caffeine.cache.LocalLoadingCache.get(LocalLoadingCache.java:56)
at com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper.getUrl(AbstractMatterCacheHelper.java:75)
at com.ningdatech.kqapi.common.helper.impl.MattersCacheHelperImpl.getUrl(MattersCacheHelperImpl.java:34)
at com.ningdatech.kqapi.scheduler.task.SynTask.synData(SynTask.java:82)
at com.ningdatech.kqapi.scheduler.controller.TaskController.synMenu(TaskController.java:58)
at com.ningdatech.kqapi.scheduler.controller.TaskController$$FastClassBySpringCGLIB$$77ce55ac.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
at org.springframework.validation.beanvalidation.MethodValidationInterceptor.invoke(MethodValidationInterceptor.java:123)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708)
at com.ningdatech.kqapi.scheduler.controller.TaskController$$EnhancerBySpringCGLIB$$1494fee7.synMenu(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1070)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2024-01-04 13:43:02.455 [http-nio-33060-Acceptor] ERROR org.apache.tomcat.util.net.Acceptor -Socket accept failed
java.nio.channels.AsynchronousCloseException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:205)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:257)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:547)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:79)
at org.apache.tomcat.util.net.Acceptor.run(Acceptor.java:129)
at java.lang.Thread.run(Thread.java:748)
2024-01-04 13:43:08.102 [http-nio-33060-Acceptor] ERROR org.apache.tomcat.util.net.Acceptor -Socket accept failed
java.nio.channels.AsynchronousCloseException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:205)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:257)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:547)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:79)
at org.apache.tomcat.util.net.Acceptor.run(Acceptor.java:129)
at java.lang.Thread.run(Thread.java:748)
2024-01-04 14:15:29.489 [http-nio-33060-Acceptor] ERROR org.apache.tomcat.util.net.Acceptor -Socket accept failed
java.nio.channels.AsynchronousCloseException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:205)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:257)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:547)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:79)
at org.apache.tomcat.util.net.Acceptor.run(Acceptor.java:129)
at java.lang.Thread.run(Thread.java:748)
2024-01-04 14:15:37.030 [http-nio-33060-exec-1] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] -Servlet.service() for servlet [dispatcherServlet] in context with path [/kq] threw exception [Request processing failed; nested exception is org.springframework.dao.RecoverableDataAccessException:
### Error querying database. Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 141,353 milliseconds ago. The last packet sent successfully to the server was 141,458 milliseconds ago.
### The error may exist in com/ningdatech/kqapi/zzsfw/mapper/DscSxAdsShareItemQltQlsxCommonIDVKqMapper.java (best guess)
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT rowguid,update_date,update_type,ql_kind,ql_mainitem_id,ql_subitem_id,shiquancj,belongxiaqucode,ql_dep_orgcdoe,itemsource,version_number,version_date,ql_effect_time,ql_inner_code,ql_name,ql_state,lawbasis,anticipate_day,anticipate_type,promise_day,applyermin_count,is_pilot,ql_dep,lead_dept,bjtype,benjispxz,handle_frequency,xingzhenxdrxz,apply_condition,banjian_finishfiles,link_tel,supervise_tel,webapplyurl,webconsulturl,charge_flag,charge_basis,rightclass_qiyezt,rightclass_qiyedx,rightclass_gerensx,rightclass_gerendx,in_flow_info,material_info,material_case_info,chargeitem_info,qa_info,accept_address_info,sync_sign,sync_date,sync_error_desc,ouorgcode,ouguid,farenurl,gerenflag,is_tongjian,ql_full_id,entrust,entrustdes,applyermin_count_desc,outypecode,out_flow_desc,banjian_finishtype,is_specialpro,state2,nosuit_apply,is_unifydo,is_upunify,ql_att,baknote,webapplymode,itemsourcetype,is_simplepunish,is_levywaiver,feebasis,fact_info,is_cs,unifydodes,is_vlb,nounify_do,ql_inner_code_item,is_touzip,hangyeclasstype,ql_sub_kind,appwebapplyurl,appappointmenturl,appointmenturl,is_webappointment,webappointmentperiod,maincontext,do_dept,relatedguid,related,is_express,service_sub_kind,ispyc,lbsx,out_flow_url,acp_institution,dec_institution,content_involve,applicable_object,xingzhenxdrxy,count_limit,count_note,ban_requirement,shixiangsctype,shixiangsclx,apply_type,apply_type_tel,apply_type_mail,apply_type_fax,handle_type,mbfarenadd,mbgerenflag,destime,service_mode,service_day,ununifydo_other,ishasownflow,dt,dsc_city,dsc_adm_region,dsc_sydep_code,dsc_sydep_name,dsc_sydep_sys,dsc_sydep_tblname,dsc_biz_record_id,dsc_biz_operation,dsc_biz_timestamp,dsc_datasr_tblname,dsc_hash_unique,dsc_clean_timestamp,dsc_dw_rksj FROM dsc_sx_ads_share_item_qlt_qlsx_common_i_d_v_kq WHERE (ql_name = ? AND webapplyurl IS NOT NULL) limit 1
### Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 141,353 milliseconds ago. The last packet sent successfully to the server was 141,458 milliseconds ago.
; Communications link failure

The last packet successfully received from the server was 141,353 milliseconds ago. The last packet sent successfully to the server was 141,458 milliseconds ago.; nested exception is com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 141,353 milliseconds ago. The last packet sent successfully to the server was 141,458 milliseconds ago.] with root cause
java.net.SocketException: Socket closed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at com.mysql.cj.protocol.ReadAheadInputStream.fill(ReadAheadInputStream.java:107)
at com.mysql.cj.protocol.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:150)
at com.mysql.cj.protocol.ReadAheadInputStream.read(ReadAheadInputStream.java:180)
at java.io.FilterInputStream.read(FilterInputStream.java:133)
at com.mysql.cj.protocol.FullReadInputStream.readFully(FullReadInputStream.java:64)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessageLocal(SimplePacketReader.java:137)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessage(SimplePacketReader.java:102)
at com.mysql.cj.protocol.a.SimplePacketReader.readMessage(SimplePacketReader.java:45)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readMessage(TimeTrackingPacketReader.java:62)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readMessage(TimeTrackingPacketReader.java:41)
at com.mysql.cj.protocol.a.MultiPacketReader.readMessage(MultiPacketReader.java:66)
at com.mysql.cj.protocol.a.MultiPacketReader.readMessage(MultiPacketReader.java:44)
at com.mysql.cj.protocol.a.NativeProtocol.readMessage(NativeProtocol.java:576)
at com.mysql.cj.protocol.a.ColumnDefinitionReader.read(ColumnDefinitionReader.java:72)
at com.mysql.cj.protocol.a.ColumnDefinitionReader.read(ColumnDefinitionReader.java:40)
at com.mysql.cj.protocol.a.NativeProtocol.read(NativeProtocol.java:1651)
at com.mysql.cj.protocol.a.TextResultsetReader.read(TextResultsetReader.java:68)
at com.mysql.cj.protocol.a.TextResultsetReader.read(TextResultsetReader.java:48)
at com.mysql.cj.protocol.a.NativeProtocol.read(NativeProtocol.java:1664)
at com.mysql.cj.protocol.a.NativeProtocol.readAllResults(NativeProtocol.java:1718)
at com.mysql.cj.protocol.a.NativeProtocol.sendQueryPacket(NativeProtocol.java:1064)
at com.mysql.cj.NativeSession.execSQL(NativeSession.java:665)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:893)
at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59)
at com.sun.proxy.$Proxy126.execute(Unknown Source)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:64)
at com.sun.proxy.$Proxy124.query(Unknown Source)
at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63)
at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325)
at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62)
at com.sun.proxy.$Proxy123.query(Unknown Source)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427)
at com.sun.proxy.$Proxy89.selectList(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy96.selectList(Unknown Source)
at com.baomidou.mybatisplus.core.mapper.BaseMapper.selectOne(BaseMapper.java:173)
at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$DefaultMethodInvoker.invoke(MybatisMapperProxy.java:162)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy96.selectOne(Unknown Source)
at com.baomidou.mybatisplus.extension.service.impl.ServiceImpl.getOne(ServiceImpl.java:202)
at com.baomidou.mybatisplus.extension.service.IService.getOne(IService.java:320)
at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)
at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704)
at com.ningdatech.kqapi.zzsfw.service.impl.DscSxAdsShareItemQltQlsxCommonIDVKqServiceImpl$$EnhancerBySpringCGLIB$$d3ce94f3.getOne(<generated>)
at com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper.lambda$init$3(AbstractMatterCacheHelper.java:130)
at com.github.benmanes.caffeine.cache.LocalLoadingCache.lambda$newMappingFunction$2(LocalLoadingCache.java:145)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.lambda$doComputeIfAbsent$14(BoundedLocalCache.java:2406)
at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1892)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.doComputeIfAbsent(BoundedLocalCache.java:2404)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.computeIfAbsent(BoundedLocalCache.java:2387)
at com.github.benmanes.caffeine.cache.LocalCache.computeIfAbsent(LocalCache.java:108)
at com.github.benmanes.caffeine.cache.LocalLoadingCache.get(LocalLoadingCache.java:56)
at com.ningdatech.kqapi.common.helper.basic.AbstractMatterCacheHelper.getUrl(AbstractMatterCacheHelper.java:84)
at com.ningdatech.kqapi.common.helper.impl.MattersCacheHelperImpl.getUrl(MattersCacheHelperImpl.java:34)
at com.ningdatech.kqapi.scheduler.task.SynTask.synData(SynTask.java:82)
at com.ningdatech.kqapi.scheduler.controller.TaskController.synMenu(TaskController.java:58)
at com.ningdatech.kqapi.scheduler.controller.TaskController$$FastClassBySpringCGLIB$$77ce55ac.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
at org.springframework.validation.beanvalidation.MethodValidationInterceptor.invoke(MethodValidationInterceptor.java:123)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708)
at com.ningdatech.kqapi.scheduler.controller.TaskController$$EnhancerBySpringCGLIB$$97e28b11.synMenu(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1070)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2024-01-04 14:15:42.048 [http-nio-33060-Acceptor] ERROR org.apache.tomcat.util.net.Acceptor -Socket accept failed
java.nio.channels.AsynchronousCloseException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:205)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:257)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:547)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:79)
at org.apache.tomcat.util.net.Acceptor.run(Acceptor.java:129)
at java.lang.Thread.run(Thread.java:748)
2024-01-04 14:32:04.107 [http-nio-33060-Acceptor] ERROR org.apache.tomcat.util.net.Acceptor -Socket accept failed
java.nio.channels.AsynchronousCloseException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:205)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:257)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:547)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:79)
at org.apache.tomcat.util.net.Acceptor.run(Acceptor.java:129)
at java.lang.Thread.run(Thread.java:748)
2024-01-04 14:32:11.610 [http-nio-33060-exec-1] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] -Servlet.service() for servlet [dispatcherServlet] in context with path [/kq] threw exception [Request processing failed; nested exception is org.springframework.dao.RecoverableDataAccessException:
### Error updating database. Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 69 milliseconds ago. The last packet sent successfully to the server was 69 milliseconds ago.
### The error may exist in com/ningdatech/kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.java (best guess)
### The error may involve com.ningdatech.kqapi.zzsfw.mapper.NdKqZzsfwMenuMapper.update-Inline
### The error occurred while setting parameters
### SQL: UPDATE nd_kq_zzsfw_menu SET webapplyurl=?,has_url=? WHERE (id = ?)
### Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 69 milliseconds ago. The last packet sent successfully to the server was 69 milliseconds ago.
; Communications link failure

The last packet successfully received from the server was 69 milliseconds ago. The last packet sent successfully to the server was 69 milliseconds ago.; nested exception is com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet successfully received from the server was 69 milliseconds ago. The last packet sent successfully to the server was 69 milliseconds ago.] with root cause
java.net.SocketException: Socket closed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at com.mysql.cj.protocol.ReadAheadInputStream.fill(ReadAheadInputStream.java:107)
at com.mysql.cj.protocol.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:150)
at com.mysql.cj.protocol.ReadAheadInputStream.read(ReadAheadInputStream.java:180)
at java.io.FilterInputStream.read(FilterInputStream.java:133)
at com.mysql.cj.protocol.FullReadInputStream.readFully(FullReadInputStream.java:64)
at com.mysql.cj.protocol.a.SimplePacketReader.readHeaderLocal(SimplePacketReader.java:81)
at com.mysql.cj.protocol.a.SimplePacketReader.readHeader(SimplePacketReader.java:63)
at com.mysql.cj.protocol.a.SimplePacketReader.readHeader(SimplePacketReader.java:45)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readHeader(TimeTrackingPacketReader.java:52)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readHeader(TimeTrackingPacketReader.java:41)
at com.mysql.cj.protocol.a.MultiPacketReader.readHeader(MultiPacketReader.java:54)
at com.mysql.cj.protocol.a.MultiPacketReader.readHeader(MultiPacketReader.java:44)
at com.mysql.cj.protocol.a.NativeProtocol.readMessage(NativeProtocol.java:575)
at com.mysql.cj.protocol.a.NativeProtocol.checkErrorMessage(NativeProtocol.java:761)
at com.mysql.cj.protocol.a.NativeProtocol.sendCommand(NativeProtocol.java:700)
at com.mysql.cj.protocol.a.NativeProtocol.sendQueryPacket(NativeProtocol.java:1051)
at com.mysql.cj.NativeSession.execSQL(NativeSession.java:665)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:893)
at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at sun.reflect.GeneratedMethodAccessor95.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59)
at com.sun.proxy.$Proxy126.execute(Unknown Source)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.update(PreparedStatementHandler.java:47)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.update(RoutingStatementHandler.java:74)
at sun.reflect.GeneratedMethodAccessor120.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:64)
at com.sun.proxy.$Proxy124.update(Unknown Source)
at org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:50)
at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:117)
at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:76)
at sun.reflect.GeneratedMethodAccessor116.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.ibatis.plugin.Invocation.proceed(Invocation.java:49)
at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:106)
at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62)
at com.sun.proxy.$Proxy123.update(Unknown Source)
at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:194)
at sun.reflect.GeneratedMethodAccessor115.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427)
at com.sun.proxy.$Proxy89.update(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.update(SqlSessionTemplate.java:288)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:64)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy102.update(Unknown Source)
at com.baomidou.mybatisplus.extension.service.IService.update(IService.java:258)
at com.baomidou.mybatisplus.extension.service.IService.update(IService.java:248)
at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386)
at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704)
at com.ningdatech.kqapi.zzsfw.service.impl.NdKqZzsfwMenuServiceImpl$$EnhancerBySpringCGLIB$$691bb53c.update(<generated>)
at com.ningdatech.kqapi.scheduler.task.SynTask.synMenu(SynTask.java:113)
at com.ningdatech.kqapi.scheduler.controller.TaskController.synMenuData(TaskController.java:65)
at com.ningdatech.kqapi.scheduler.controller.TaskController$$FastClassBySpringCGLIB$$77ce55ac.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
at org.springframework.validation.beanvalidation.MethodValidationInterceptor.invoke(MethodValidationInterceptor.java:123)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708)
at com.ningdatech.kqapi.scheduler.controller.TaskController$$EnhancerBySpringCGLIB$$820ca003.synMenuData(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1070)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2024-01-04 14:32:16.612 [http-nio-33060-Acceptor] ERROR org.apache.tomcat.util.net.Acceptor -Socket accept failed
java.nio.channels.AsynchronousCloseException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:205)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:257)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:547)
at org.apache.tomcat.util.net.NioEndpoint.serverSocketAccept(NioEndpoint.java:79)
at org.apache.tomcat.util.net.Acceptor.run(Acceptor.java:129)
at java.lang.Thread.run(Thread.java:748)

+ 0
- 134
logs/error-20240402-0.log View File

@@ -1,134 +0,0 @@
2024-04-02 17:31:45.271 [restartedMain] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'routerFunctionMapping' defined in class path resource [org/springframework/web/servlet/config/annotation/DelegatingWebMvcConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.web.servlet.function.support.RouterFunctionMapping]: Factory method 'routerFunctionMapping' threw exception; nested exception is java.lang.NullPointerException
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at com.ningdatech.kqapi.App.main(App.java:31)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.web.servlet.function.support.RouterFunctionMapping]: Factory method 'routerFunctionMapping' threw exception; nested exception is java.lang.NullPointerException
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
... 24 common frames omitted
Caused by: java.lang.NullPointerException: null
at com.ningdatech.kqapi.common.util.SpringUtils.getBean(SpringUtils.java:64)
at com.ningdatech.kqapi.common.config.BeanConfig.configureMessageConverters(BeanConfig.java:136)
at org.springframework.web.servlet.config.annotation.WebMvcConfigurerComposite.configureMessageConverters(WebMvcConfigurerComposite.java:137)
at org.springframework.web.servlet.config.annotation.DelegatingWebMvcConfiguration.configureMessageConverters(DelegatingWebMvcConfiguration.java:118)
at org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport.getMessageConverters(WebMvcConfigurationSupport.java:865)
at org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport.routerFunctionMapping(WebMvcConfigurationSupport.java:568)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
... 25 common frames omitted
2024-04-02 17:33:22.321 [restartedMain] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'springContextHolder' defined in com.ningdatech.kqapi.App: Post-processing of merged bean definition failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.ningdatech.kqapi.common.util.SpringContextHolder] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:597)
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:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at com.ningdatech.kqapi.App.main(App.java:31)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: java.lang.IllegalStateException: Failed to introspect Class [com.ningdatech.kqapi.common.util.SpringContextHolder] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:485)
at org.springframework.util.ReflectionUtils.doWithLocalMethods(ReflectionUtils.java:321)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.buildLifecycleMetadata(InitDestroyAnnotationBeanPostProcessor.java:232)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.findLifecycleMetadata(InitDestroyAnnotationBeanPostProcessor.java:210)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(InitDestroyAnnotationBeanPostProcessor.java:149)
at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(CommonAnnotationBeanPostProcessor.java:305)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyMergedBeanDefinitionPostProcessors(AbstractAutowireCapableBeanFactory.java:1116)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594)
... 20 common frames omitted
Caused by: java.lang.NoClassDefFoundError: com/ningdatech/kqapi/common/util/CallBack
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.getDeclaredMethods(Class.java:1975)
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:467)
... 27 common frames omitted
Caused by: java.lang.ClassNotFoundException: com.ningdatech.kqapi.common.util.CallBack
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 31 common frames omitted
2024-04-02 17:37:40.478 [restartedMain] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'springContextHolder' defined in com.ningdatech.kqapi.App: Post-processing of merged bean definition failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.ningdatech.kqapi.common.util.SpringContextHolder] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:597)
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:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at com.ningdatech.kqapi.App.main(App.java:31)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: java.lang.IllegalStateException: Failed to introspect Class [com.ningdatech.kqapi.common.util.SpringContextHolder] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:485)
at org.springframework.util.ReflectionUtils.doWithLocalMethods(ReflectionUtils.java:321)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.buildLifecycleMetadata(InitDestroyAnnotationBeanPostProcessor.java:232)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.findLifecycleMetadata(InitDestroyAnnotationBeanPostProcessor.java:210)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(InitDestroyAnnotationBeanPostProcessor.java:149)
at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(CommonAnnotationBeanPostProcessor.java:305)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyMergedBeanDefinitionPostProcessors(AbstractAutowireCapableBeanFactory.java:1116)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594)
... 20 common frames omitted
Caused by: java.lang.NoClassDefFoundError: com/ningdatech/kqapi/common/util/CallBack
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.getDeclaredMethods(Class.java:1975)
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:467)
... 27 common frames omitted
Caused by: java.lang.ClassNotFoundException: com.ningdatech.kqapi.common.util.CallBack
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 31 common frames omitted

+ 0
- 45
logs/error.log View File

@@ -1,45 +0,0 @@
2024-04-07 15:47:33.218 [restartedMain] ERROR o.s.boot.SpringApplication -Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'springContextHolder' defined in com.ningdatech.kqapi.App: Post-processing of merged bean definition failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.ningdatech.kqapi.common.util.SpringContextHolder] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:597)
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:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at com.ningdatech.kqapi.App.main(App.java:31)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: java.lang.IllegalStateException: Failed to introspect Class [com.ningdatech.kqapi.common.util.SpringContextHolder] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:485)
at org.springframework.util.ReflectionUtils.doWithLocalMethods(ReflectionUtils.java:321)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.buildLifecycleMetadata(InitDestroyAnnotationBeanPostProcessor.java:232)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.findLifecycleMetadata(InitDestroyAnnotationBeanPostProcessor.java:210)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(InitDestroyAnnotationBeanPostProcessor.java:149)
at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(CommonAnnotationBeanPostProcessor.java:305)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyMergedBeanDefinitionPostProcessors(AbstractAutowireCapableBeanFactory.java:1116)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594)
... 20 common frames omitted
Caused by: java.lang.NoClassDefFoundError: com/ningdatech/kqapi/common/util/CallBack
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.getDeclaredMethods(Class.java:1975)
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:467)
... 27 common frames omitted
Caused by: java.lang.ClassNotFoundException: com.ningdatech.kqapi.common.util.CallBack
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 31 common frames omitted

+ 0
- 29
logs/info-20231122-0.log View File

@@ -1,29 +0,0 @@
2023-11-22 16:44:53.770 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2023-11-22 16:44:53.775 [restartedMain] INFO com.ningdatech.kqapi.App -Starting App using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 26304 (D:\ningda\kq-value-added-project\kqapi\target\classes started by PoffyZhang in D:\ningda\kq-value-added-project)
2023-11-22 16:44:53.776 [restartedMain] INFO com.ningdatech.kqapi.App -The following 1 profile is active: "dev"
2023-11-22 16:44:53.829 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor -Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2023-11-22 16:44:53.829 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor -For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2023-11-22 16:44:55.226 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 33060 (http)
2023-11-22 16:44:55.233 [restartedMain] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-33060"]
2023-11-22 16:44:55.234 [restartedMain] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2023-11-22 16:44:55.234 [restartedMain] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2023-11-22 16:44:55.280 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2023-11-22 16:44:55.280 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 1450 ms
2023-11-22 16:44:57.025 [restartedMain] INFO com.ningdatech.swagger.SwaggerConfig -swagger文档加载……
2023-11-22 16:44:57.859 [restartedMain] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2023-11-22 16:44:57.976 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer -LiveReload server is running on port 35729
2023-11-22 16:44:58.046 [restartedMain] INFO s.d.s.w.WebMvcPropertySourcedRequestMappingHandlerMapping -Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
2023-11-22 16:44:58.166 [restartedMain] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2023-11-22 16:44:58.293 [restartedMain] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-33060"]
2023-11-22 16:44:58.310 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 33060 (http) with context path '/kq'
2023-11-22 16:44:58.310 [restartedMain] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Documentation plugins bootstrapped
2023-11-22 16:44:58.313 [restartedMain] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Found 1 custom documentation plugin(s)
2023-11-22 16:44:58.337 [restartedMain] INFO s.d.s.w.s.ApiListingReferenceScanner -Scanning for api listing references
2023-11-22 16:44:58.444 [restartedMain] INFO com.ningdatech.kqapi.App -Started App in 5.135 seconds (JVM running for 6.658)
2023-11-22 16:45:27.831 [http-nio-33060-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring DispatcherServlet 'dispatcherServlet'
2023-11-22 16:45:27.831 [http-nio-33060-exec-1] INFO o.s.web.servlet.DispatcherServlet -Initializing Servlet 'dispatcherServlet'
2023-11-22 16:45:27.832 [http-nio-33060-exec-1] INFO o.s.web.servlet.DispatcherServlet -Completed initialization in 1 ms
2023-11-22 16:45:27.938 [http-nio-33060-exec-1] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Starting...
2023-11-22 16:45:28.349 [http-nio-33060-exec-1] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Start completed.
2023-11-22 18:06:02.928 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown initiated...
2023-11-22 18:06:02.936 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown completed.

+ 0
- 69
logs/info-20240112-0.log View File

@@ -1,69 +0,0 @@
2024-01-12 10:46:52.783 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2024-01-12 10:46:52.790 [restartedMain] INFO com.ningdatech.kqapi.App -Starting App using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 16568 (D:\ningda\kq-value-added-project\kqapi\target\classes started by PoffyZhang in D:\ningda\kq-value-added-project)
2024-01-12 10:46:52.790 [restartedMain] INFO com.ningdatech.kqapi.App -The following 1 profile is active: "dev"
2024-01-12 10:46:52.843 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor -Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2024-01-12 10:46:52.843 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor -For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2024-01-12 10:46:54.223 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 33060 (http)
2024-01-12 10:46:54.231 [restartedMain] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-33060"]
2024-01-12 10:46:54.232 [restartedMain] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2024-01-12 10:46:54.232 [restartedMain] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2024-01-12 10:46:54.280 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2024-01-12 10:46:54.280 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 1436 ms
2024-01-12 10:46:55.949 [restartedMain] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2024-01-12 10:46:56.053 [restartedMain] INFO com.ningdatech.swagger.SwaggerConfig -swagger文档加载……
2024-01-12 10:46:56.242 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer -LiveReload server is running on port 35729
2024-01-12 10:46:56.317 [restartedMain] INFO s.d.s.w.WebMvcPropertySourcedRequestMappingHandlerMapping -Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
2024-01-12 10:46:56.433 [restartedMain] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2024-01-12 10:46:56.562 [restartedMain] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-33060"]
2024-01-12 10:46:56.579 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 33060 (http) with context path '/kq'
2024-01-12 10:46:56.580 [restartedMain] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Documentation plugins bootstrapped
2024-01-12 10:46:56.582 [restartedMain] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Found 1 custom documentation plugin(s)
2024-01-12 10:46:56.609 [restartedMain] INFO s.d.s.w.s.ApiListingReferenceScanner -Scanning for api listing references
2024-01-12 10:46:56.766 [restartedMain] INFO s.d.s.w.r.o.CachingOperationNameGenerator -Generating unique operation named: removeAllUsingGET_1
2024-01-12 10:46:56.769 [restartedMain] INFO s.d.s.w.r.o.CachingOperationNameGenerator -Generating unique operation named: saveUsingPOST_1
2024-01-12 10:46:56.788 [restartedMain] INFO com.ningdatech.kqapi.App -Started App in 4.469 seconds (JVM running for 6.132)
2024-01-12 10:49:38.555 [http-nio-33060-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring DispatcherServlet 'dispatcherServlet'
2024-01-12 10:49:38.555 [http-nio-33060-exec-1] INFO o.s.web.servlet.DispatcherServlet -Initializing Servlet 'dispatcherServlet'
2024-01-12 10:49:38.556 [http-nio-33060-exec-1] INFO o.s.web.servlet.DispatcherServlet -Completed initialization in 1 ms
2024-01-12 10:49:38.599 [http-nio-33060-exec-1] INFO c.n.kqapi.scheduler.task.SynTask -政务数据 ===================== 同步开始
2024-01-12 10:49:38.665 [http-nio-33060-exec-1] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Starting...
2024-01-12 10:49:39.144 [http-nio-33060-exec-1] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Start completed.
2024-01-12 10:51:56.444 [HikariPool-1 housekeeper] WARN com.zaxxer.hikari.pool.HikariPool -HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=47s162ms264µs700ns).
2024-01-12 10:59:27.887 [HikariPool-1 housekeeper] WARN com.zaxxer.hikari.pool.HikariPool -HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=1m43s983ms682µs500ns).
2024-01-12 11:01:04.320 [HikariPool-1 housekeeper] WARN com.zaxxer.hikari.pool.HikariPool -HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=1m36s433ms278µs300ns).
2024-01-12 11:05:41.977 [http-nio-33060-exec-6] INFO c.n.kqapi.scheduler.task.SynTask -政务数据 ===================== 同步开始
2024-01-12 11:11:01.607 [HikariPool-1 housekeeper] WARN com.zaxxer.hikari.pool.HikariPool -HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=5m27s214ms75µs).
2024-01-12 11:11:03.371 [http-nio-33060-exec-9] INFO c.n.kqapi.scheduler.task.SynTask -政务数据 ===================== 同步开始
2024-01-12 11:12:50.483 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2024-01-12 11:12:50.487 [restartedMain] INFO com.ningdatech.kqapi.App -Starting App using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 20516 (D:\ningda\kq-value-added-project\kqapi\target\classes started by PoffyZhang in D:\ningda\kq-value-added-project)
2024-01-12 11:12:50.487 [restartedMain] INFO com.ningdatech.kqapi.App -The following 1 profile is active: "dev"
2024-01-12 11:12:50.536 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor -Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2024-01-12 11:12:50.537 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor -For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2024-01-12 11:12:51.824 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 33060 (http)
2024-01-12 11:12:51.832 [restartedMain] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-33060"]
2024-01-12 11:12:51.833 [restartedMain] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2024-01-12 11:12:51.833 [restartedMain] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2024-01-12 11:12:51.880 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2024-01-12 11:12:51.880 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 1343 ms
2024-01-12 11:12:53.540 [restartedMain] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2024-01-12 11:12:53.679 [restartedMain] INFO com.ningdatech.swagger.SwaggerConfig -swagger文档加载……
2024-01-12 11:12:53.897 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer -LiveReload server is running on port 35729
2024-01-12 11:12:53.971 [restartedMain] INFO s.d.s.w.WebMvcPropertySourcedRequestMappingHandlerMapping -Mapped URL path [/v2/api-docs] onto method [springfox.documentation.swagger2.web.Swagger2ControllerWebMvc#getDocumentation(String, HttpServletRequest)]
2024-01-12 11:12:54.078 [restartedMain] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2024-01-12 11:12:54.324 [restartedMain] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-33060"]
2024-01-12 11:12:54.346 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 33060 (http) with context path '/kq'
2024-01-12 11:12:54.347 [restartedMain] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Documentation plugins bootstrapped
2024-01-12 11:12:54.351 [restartedMain] INFO s.d.s.w.p.DocumentationPluginsBootstrapper -Found 1 custom documentation plugin(s)
2024-01-12 11:12:54.394 [restartedMain] INFO s.d.s.w.s.ApiListingReferenceScanner -Scanning for api listing references
2024-01-12 11:12:54.621 [restartedMain] INFO s.d.s.w.r.o.CachingOperationNameGenerator -Generating unique operation named: removeAllUsingGET_1
2024-01-12 11:12:54.624 [restartedMain] INFO s.d.s.w.r.o.CachingOperationNameGenerator -Generating unique operation named: saveUsingPOST_1
2024-01-12 11:12:54.642 [restartedMain] INFO com.ningdatech.kqapi.App -Started App in 4.61 seconds (JVM running for 5.693)
2024-01-12 11:13:24.422 [http-nio-33060-exec-2] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring DispatcherServlet 'dispatcherServlet'
2024-01-12 11:13:24.422 [http-nio-33060-exec-2] INFO o.s.web.servlet.DispatcherServlet -Initializing Servlet 'dispatcherServlet'
2024-01-12 11:13:24.423 [http-nio-33060-exec-2] INFO o.s.web.servlet.DispatcherServlet -Completed initialization in 0 ms
2024-01-12 11:13:24.466 [http-nio-33060-exec-2] INFO c.n.kqapi.scheduler.task.SynTask -政务数据 ===================== 同步开始
2024-01-12 11:13:35.012 [http-nio-33060-exec-2] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Starting...
2024-01-12 11:13:35.626 [http-nio-33060-exec-2] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Start completed.
2024-01-12 11:16:08.764 [http-nio-33060-exec-2] INFO c.n.kqapi.scheduler.task.SynTask -政务数据 ===================== 同步总共耗时 :164.2938508 s
2024-01-12 14:15:06.609 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown initiated...
2024-01-12 14:15:06.616 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Shutdown completed.

+ 0
- 53
logs/info.log View File

@@ -1,53 +0,0 @@
2024-04-10 16:37:21.055 [background-preinit] INFO o.h.validator.internal.util.Version -HV000001: Hibernate Validator 6.2.4.Final
2024-04-10 16:37:21.060 [restartedMain] INFO com.ningdatech.kqapi.App -Starting App using Java 1.8.0_131 on LAPTOP-NQGEQP03 with PID 27496 (D:\ningda\kq-value-added-project\kqapi\target\classes started by PoffyZhang in D:\ningda\kq-value-added-project)
2024-04-10 16:37:21.060 [restartedMain] INFO com.ningdatech.kqapi.App -The following 1 profile is active: "dev"
2024-04-10 16:37:21.109 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor -Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2024-04-10 16:37:21.109 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor -For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2024-04-10 16:37:22.018 [restartedMain] INFO c.u.j.c.EnableEncryptablePropertiesBeanFactoryPostProcessor -Post-processing PropertySource instances
2024-04-10 16:37:22.018 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource configurationProperties [class org.springframework.boot.context.properties.source.ConfigurationPropertySourcesPropertySource
2024-04-10 16:37:22.019 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource servletConfigInitParams [class org.springframework.core.env.PropertySource$StubPropertySource
2024-04-10 16:37:22.019 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource servletContextInitParams [class org.springframework.core.env.PropertySource$StubPropertySource
2024-04-10 16:37:22.021 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource systemProperties [org.springframework.core.env.PropertiesPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-10 16:37:22.021 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource systemEnvironment [org.springframework.boot.env.SystemEnvironmentPropertySourceEnvironmentPostProcessor$OriginAwareSystemEnvironmentPropertySource] to EncryptableSystemEnvironmentPropertySourceWrapper
2024-04-10 16:37:22.022 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource random [org.springframework.boot.env.RandomValuePropertySource] to EncryptablePropertySourceWrapper
2024-04-10 16:37:22.022 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource Config resource 'class path resource [application-dev.yml]' via location 'optional:classpath:/' [org.springframework.boot.env.OriginTrackedMapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-10 16:37:22.022 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource Config resource 'class path resource [application.yml]' via location 'optional:classpath:/' [org.springframework.boot.env.OriginTrackedMapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-10 16:37:22.022 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource devtools [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-10 16:37:22.151 [restartedMain] INFO c.u.j.f.DefaultLazyPropertyFilter -Property Filter custom Bean not found with name 'encryptablePropertyFilter'. Initializing Default Property Filter
2024-04-10 16:37:22.158 [restartedMain] INFO c.u.j.r.DefaultLazyPropertyResolver -Property Resolver custom Bean not found with name 'encryptablePropertyResolver'. Initializing Default Property Resolver
2024-04-10 16:37:22.160 [restartedMain] INFO c.u.j.d.DefaultLazyPropertyDetector -Property Detector custom Bean not found with name 'encryptablePropertyDetector'. Initializing Default Property Detector
2024-04-10 16:37:22.380 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat initialized with port(s): 33060 (http)
2024-04-10 16:37:22.388 [restartedMain] INFO o.a.coyote.http11.Http11NioProtocol -Initializing ProtocolHandler ["http-nio-33060"]
2024-04-10 16:37:22.388 [restartedMain] INFO o.a.catalina.core.StandardService -Starting service [Tomcat]
2024-04-10 16:37:22.388 [restartedMain] INFO o.a.catalina.core.StandardEngine -Starting Servlet engine: [Apache Tomcat/9.0.65]
2024-04-10 16:37:22.428 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring embedded WebApplicationContext
2024-04-10 16:37:22.428 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext -Root WebApplicationContext: initialization completed in 1318 ms
2024-04-10 16:37:22.616 [restartedMain] INFO c.u.j.encryptor.DefaultLazyEncryptor -String Encryptor custom Bean not found with name 'jasyptStringEncryptor'. Initializing Default String Encryptor
2024-04-10 16:37:22.627 [restartedMain] INFO c.u.j.c.StringEncryptorBuilder -Encryptor config not found for property jasypt.encryptor.key-obtention-iterations, using default value: 1000
2024-04-10 16:37:22.627 [restartedMain] INFO c.u.j.c.StringEncryptorBuilder -Encryptor config not found for property jasypt.encryptor.pool-size, using default value: 1
2024-04-10 16:37:22.627 [restartedMain] INFO c.u.j.c.StringEncryptorBuilder -Encryptor config not found for property jasypt.encryptor.provider-name, using default value: null
2024-04-10 16:37:22.628 [restartedMain] INFO c.u.j.c.StringEncryptorBuilder -Encryptor config not found for property jasypt.encryptor.provider-class-name, using default value: null
2024-04-10 16:37:22.628 [restartedMain] INFO c.u.j.c.StringEncryptorBuilder -Encryptor config not found for property jasypt.encryptor.salt-generator-classname, using default value: org.jasypt.salt.RandomSaltGenerator
2024-04-10 16:37:22.629 [restartedMain] INFO c.u.j.c.StringEncryptorBuilder -Encryptor config not found for property jasypt.encryptor.string-output-type, using default value: base64
2024-04-10 16:37:24.252 [restartedMain] INFO c.n.kqapi.common.config.BeanConfig ------restTemplate-----初始化完成
2024-04-10 16:37:24.643 [restartedMain] WARN o.s.b.a.f.FreeMarkerAutoConfiguration -Cannot find template location(s): [classpath:/templates/] (please add some templates, check your FreeMarker configuration, or set spring.freemarker.checkTemplateLocation=false)
2024-04-10 16:37:24.760 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer -LiveReload server is running on port 35729
2024-04-10 16:37:24.780 [restartedMain] INFO o.a.coyote.http11.Http11NioProtocol -Starting ProtocolHandler ["http-nio-33060"]
2024-04-10 16:37:24.799 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer -Tomcat started on port(s): 33060 (http) with context path '/kq'
2024-04-10 16:37:24.800 [restartedMain] INFO c.u.j.c.RefreshScopeRefreshedEventListener -Refreshing cached encryptable property sources on ServletWebServerInitializedEvent
2024-04-10 16:37:24.801 [restartedMain] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source systemProperties refreshed
2024-04-10 16:37:24.801 [restartedMain] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source systemEnvironment refreshed
2024-04-10 16:37:24.801 [restartedMain] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source random refreshed
2024-04-10 16:37:24.801 [restartedMain] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source Config resource 'class path resource [application-dev.yml]' via location 'optional:classpath:/' refreshed
2024-04-10 16:37:24.801 [restartedMain] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source Config resource 'class path resource [application.yml]' via location 'optional:classpath:/' refreshed
2024-04-10 16:37:24.801 [restartedMain] INFO c.u.j.c.CachingDelegateEncryptablePropertySource -Property Source devtools refreshed
2024-04-10 16:37:24.802 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource server.ports [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2024-04-10 16:37:24.802 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource configurationProperties [class org.springframework.boot.context.properties.source.ConfigurationPropertySourcesPropertySource
2024-04-10 16:37:24.802 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Skipping PropertySource servletConfigInitParams [class org.springframework.core.env.PropertySource$StubPropertySource
2024-04-10 16:37:24.802 [restartedMain] INFO c.u.j.EncryptablePropertySourceConverter -Converting PropertySource servletContextInitParams [org.springframework.web.context.support.ServletContextPropertySource] to EncryptableEnumerablePropertySourceWrapper
2024-04-10 16:37:24.815 [restartedMain] INFO com.ningdatech.kqapi.App -Started App in 4.202 seconds (JVM running for 5.298)
2024-04-10 16:37:54.180 [http-nio-33060-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/kq] -Initializing Spring DispatcherServlet 'dispatcherServlet'
2024-04-10 16:37:54.180 [http-nio-33060-exec-1] INFO o.s.web.servlet.DispatcherServlet -Initializing Servlet 'dispatcherServlet'
2024-04-10 16:37:54.181 [http-nio-33060-exec-1] INFO o.s.web.servlet.DispatcherServlet -Completed initialization in 1 ms
2024-04-10 16:37:54.277 [http-nio-33060-exec-1] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Starting...
2024-04-10 16:37:54.561 [http-nio-33060-exec-1] INFO com.zaxxer.hikari.HikariDataSource -HikariPool-1 - Start completed.

Loading…
Cancel
Save