From 5136a3a78b83db4406924b139d255dcba9ad38a1 Mon Sep 17 00:00:00 2001 From: qingfeng1121 Date: Wed, 5 Nov 2025 16:11:38 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E9=9A=8F=E6=9C=BA?= =?UTF-8?q?=E5=86=85=E5=AE=B9=E6=A8=A1=E5=9D=97=E5=B9=B6=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E5=AE=89=E5=85=A8=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增Nonsense相关实体、DTO、Repository、Service和Controller,实现随机内容的CRUD功能 优化CORS和安全配置,增加更精细的权限控制和错误处理 移除Article和Message中不必要的验证注解,调整部分API的权限要求 --- logs/web_project.log | 26607 ++++++---------- logs/web_project.log.2025-10-27.0.gz | Bin 125514 -> 0 bytes logs/web_project.log.2025-10-28.0.gz | Bin 33066 -> 0 bytes logs/web_project.log.2025-11-03.0.gz | Bin 0 -> 73419 bytes logs/web_project.log.2025-11-04.0.gz | Bin 0 -> 64990 bytes .../qf/myafterprojecy/config/CorsConfig.java | 22 +- .../config/JwtAuthenticationFilter.java | 2 +- .../myafterprojecy/config/SecurityConfig.java | 49 +- .../controller/ArticleController.java | 7 +- .../CategoryAttributeController.java | 6 +- .../controller/HelpController.java | 4 +- .../controller/MessageController.java | 5 +- .../controller/NonsenseController.java | 87 + .../com/qf/myafterprojecy/pojo/Article.java | 2 - .../com/qf/myafterprojecy/pojo/Message.java | 13 +- .../com/qf/myafterprojecy/pojo/Nonsense.java | 38 + .../myafterprojecy/pojo/dto/MessageDto.java | 10 + .../myafterprojecy/pojo/dto/NonsenseDto.java | 36 + .../repository/ArticleRepository.java | 1 + .../repository/NonsenseRepository.java | 9 + .../service/CategoryAttributeService.java | 49 +- .../service/NonsenseService.java | 132 + .../imp/ICategoryAttributeService.java | 5 + .../service/imp/INonsenseService.java | 44 + 24 files changed, 9960 insertions(+), 17168 deletions(-) delete mode 100644 logs/web_project.log.2025-10-27.0.gz delete mode 100644 logs/web_project.log.2025-10-28.0.gz create mode 100644 logs/web_project.log.2025-11-03.0.gz create mode 100644 logs/web_project.log.2025-11-04.0.gz create mode 100644 src/main/java/com/qf/myafterprojecy/controller/NonsenseController.java create mode 100644 src/main/java/com/qf/myafterprojecy/pojo/Nonsense.java create mode 100644 src/main/java/com/qf/myafterprojecy/pojo/dto/NonsenseDto.java create mode 100644 src/main/java/com/qf/myafterprojecy/repository/NonsenseRepository.java create mode 100644 src/main/java/com/qf/myafterprojecy/service/NonsenseService.java create mode 100644 src/main/java/com/qf/myafterprojecy/service/imp/INonsenseService.java diff --git a/logs/web_project.log b/logs/web_project.log index b91b0be..a4d4854 100644 --- a/logs/web_project.log +++ b/logs/web_project.log @@ -1,12875 +1,943 @@ -2025-11-03 15:15:26 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:15:26 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:15:26 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:15:26 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor - Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable -2025-11-03 15:15:26 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor - For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG' -2025-11-03 15:15:27 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:15:27 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 58 ms. Found 5 JPA repository interfaces. -2025-11-03 15:15:27 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:15:27 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:15:27 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:15:27 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:15:27 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:15:27 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 1413 ms -2025-11-03 15:15:27 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:15:28 [restartedMain] INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 5.6.12.Final -2025-11-03 15:15:28 [restartedMain] INFO o.h.annotations.common.Version - HCANN000001: Hibernate Commons Annotations {5.1.2.Final} -2025-11-03 15:15:28 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:15:28 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:15:28 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:15:29 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:15:29 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:15:29 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:15:29 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@34d2a9dc, org.springframework.security.web.context.SecurityContextPersistenceFilter@47c2a22d, org.springframework.security.web.header.HeaderWriterFilter@7bb30982, org.springframework.security.web.authentication.logout.LogoutFilter@2e79fca1, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1004/0x00000007c08da028@44a48c06, com.qf.myafterprojecy.config.JwtAuthenticationFilter@39ffd247, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@7a3c2df9, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@376f76e2, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@5a406ef7, org.springframework.security.web.session.SessionManagementFilter@6c5410e7, org.springframework.security.web.access.ExceptionTranslationFilter@33dd8778, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@5339b875] -2025-11-03 15:15:30 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:15:30 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:15:30 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:15:30 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 4.438 seconds (JVM running for 5.302) -2025-11-03 15:15:45 [http-nio-8080-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2025-11-03 15:15:45 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2025-11-03 15:15:45 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 1 ms -2025-11-03 15:15:45 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:45Z, a difference of 162611656 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:45 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:15:45 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:45Z, a difference of 162611790 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:45 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:45Z, a difference of 162611790 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:45 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:45Z, a difference of 162611790 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:45 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:45Z, a difference of 162611790 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:45 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:15:45 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:15:45 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:15:45 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:15:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:15:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:15:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:15:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:15:48 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:48Z, a difference of 162614577 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:15:48 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:48Z, a difference of 162614604 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:48 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:15:48 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:15:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:15:48 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:48Z, a difference of 162614649 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:48 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:15:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:15:48 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:48Z, a difference of 162614673 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:48 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:15:48 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:15:48 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:15:48 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:48Z, a difference of 162614685 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:48 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:15:48 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:15:48 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:48Z, a difference of 162614700 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:48 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:15:48 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:15:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:15:48 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:15:48Z, a difference of 162614712 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:15:48 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:15:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:17:45 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:17:45Z, a difference of 162731419 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:17:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:17:45 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:17:45Z, a difference of 162731661 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:17:45 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:17:45 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:17:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:17:45 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:17:45Z, a difference of 162731891 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:17:45 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:17:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:17:45 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:17:45Z, a difference of 162731914 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:17:45 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:17:45 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:17:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:17:45 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:17:45Z, a difference of 162731932 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:17:45 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:17:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:17:45 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:17:45Z, a difference of 162731948 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:17:45 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:17:45 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:17:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:17:45 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:17:45Z, a difference of 162731959 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:17:45 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:17:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:20:38 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:20:38Z, a difference of 162904030 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:20:38 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:20:38 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:20:38Z, a difference of 162904367 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:20:38 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:20:38 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:20:38 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:20:38 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:20:38Z, a difference of 162904380 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:20:38 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:20:38 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:20:38 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:20:38Z, a difference of 162904393 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:20:38 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:20:38 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:20:38 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:20:38 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:20:38Z, a difference of 162904406 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:20:38 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:20:38 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:20:38 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:20:38Z, a difference of 162904425 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:20:38 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:20:38 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:20:38 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:20:38 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:20:38Z, a difference of 162904441 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:20:38 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:20:38 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:28:40 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:40Z, a difference of 163386774 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:28:41 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:41Z, a difference of 163387109 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:41 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:28:41 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:28:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:28:41 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:41Z, a difference of 163387138 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:41 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:28:41 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:28:41 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:41Z, a difference of 163387352 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:41 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:28:41 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:28:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:28:41 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:41Z, a difference of 163387379 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:41 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:28:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:28:41 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:41Z, a difference of 163387412 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:41 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:28:41 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:28:41 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:28:41 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:41Z, a difference of 163387434 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:41 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:28:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:28:55 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:55Z, a difference of 163401692 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:58 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:58Z, a difference of 163404812 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:28:59 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:59Z, a difference of 163405179 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:59 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:28:59 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:28:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:28:59 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:59Z, a difference of 163405216 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:59 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:28:59 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:28:59 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:59Z, a difference of 163405232 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:59 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:28:59 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:28:59 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:28:59 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:59Z, a difference of 163405252 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:59 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:28:59 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:28:59 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:59Z, a difference of 163405271 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:59 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:28:59 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:28:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:28:59 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:28:59Z, a difference of 163405287 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:28:59 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:28:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:29:05 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:05Z, a difference of 163411736 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:05 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:29:05 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:05Z, a difference of 163411755 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:05 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:05Z, a difference of 163411755 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:05 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:05Z, a difference of 163411755 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:05 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:05Z, a difference of 163411755 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:05 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:29:05 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:29:05 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:29:05 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:29:05 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:29:05 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:29:05 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:29:05 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:29:05 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:05Z, a difference of 163411779 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:05 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:29:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:29:05 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:05Z, a difference of 163411783 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:05 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:05Z, a difference of 163411783 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:05 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:05Z, a difference of 163411783 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:05 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:29:05 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:29:05 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:29:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:29:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:29:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:29:05 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:05Z, a difference of 163411810 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:29:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:29:08 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:08Z, a difference of 163414829 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:08 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:29:09 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:09Z, a difference of 163415123 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:09 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:29:09 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:29:09 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:09Z, a difference of 163415165 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:09 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:29:09 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:29:09 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:09Z, a difference of 163415192 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:09 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:09Z, a difference of 163415192 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:09 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:29:09 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:09Z, a difference of 163415196 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:09 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:09Z, a difference of 163415196 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:09 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:29:09 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:29:09 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:29:09 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:29:09 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:29:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:29:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:29:09 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:09Z, a difference of 163415215 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:09 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:29:09 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:09Z, a difference of 163415218 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:29:09 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:29:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:29:09 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:09Z, a difference of 163415234 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:29:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:29:10 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:10Z, a difference of 163416969 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:11 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:11Z, a difference of 163417004 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:29:11 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:11Z, a difference of 163417022 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:11 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:29:11 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:29:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:29:11 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:11Z, a difference of 163417035 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:11 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:29:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:29:11 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:11Z, a difference of 163417050 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:11 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:29:11 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:29:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:29:11 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:11Z, a difference of 163417063 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:11 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:29:11 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:29:11 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:11Z, a difference of 163417075 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:11 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:29:11 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:29:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:29:11 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:29:11Z, a difference of 163417089 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:29:11 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:29:11 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:08 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:08Z, a difference of 163474101 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:08 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:30:08 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:08Z, a difference of 163474122 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:08 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:08Z, a difference of 163474122 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:08 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:08Z, a difference of 163474122 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:08 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:08Z, a difference of 163474122 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:08 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:08 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:08 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:08 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:08 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:08 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:08 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:08 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:08 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:08Z, a difference of 163474142 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:08 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:08Z, a difference of 163474143 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:08 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:08Z, a difference of 163474142 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:08 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:08Z, a difference of 163474143 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:08 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:30:08 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:30:08 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:08 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:30:08 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:30:08 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:08 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:30:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:30:08 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:08Z, a difference of 163474170 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:08 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:08 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:10 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:10Z, a difference of 163476816 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:10 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 -2025-11-03 15:30:10 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 查询所有消息 -2025-11-03 15:30:12 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:12Z, a difference of 163478982 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:12 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收点赞消息的请求: 354 -2025-11-03 15:30:12 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 点赞消息: 354 -2025-11-03 15:30:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [354] -2025-11-03 15:30:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [354] -2025-11-03 15:30:15 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:15Z, a difference of 163481557 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:15 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收点赞消息的请求: 358 -2025-11-03 15:30:15 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 点赞消息: 358 -2025-11-03 15:30:15 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [358] -2025-11-03 15:30:15 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [358] -2025-11-03 15:30:16 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:16Z, a difference of 163482296 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:16 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收点赞消息的请求: 359 -2025-11-03 15:30:16 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 点赞消息: 359 -2025-11-03 15:30:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [359] -2025-11-03 15:30:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [359] -2025-11-03 15:30:22 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:22Z, a difference of 163488802 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:22 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:22Z, a difference of 163488816 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:22 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:30:22 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:30:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:30:22 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:22Z, a difference of 163488826 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:22 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:22 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:22 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:22Z, a difference of 163488838 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:22 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:30:22 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:30:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:30:22 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:22Z, a difference of 163488848 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:22 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:22 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:22 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:22Z, a difference of 163488860 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:22 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:30:22 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:30:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:30:22 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:22Z, a difference of 163488869 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:22 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:22 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:38 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:38Z, a difference of 163504130 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:38 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:38 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:38Z, a difference of 163504252 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:38 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:30:38 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:30:38 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:30:38 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:38Z, a difference of 163504693 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:38 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:38 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:38 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:38Z, a difference of 163504711 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:38 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:30:38 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:30:38 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:30:38 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:38Z, a difference of 163504727 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:38 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:38 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:38 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:38Z, a difference of 163504744 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:38 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:30:38 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:30:38 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:30:38 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:38Z, a difference of 163504759 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:38 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:38 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:42 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:42Z, a difference of 163508779 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:43 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:43Z, a difference of 163509030 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:43 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:30:43 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:30:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:30:43 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:43Z, a difference of 163509038 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:43 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:43 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:43Z, a difference of 163509050 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:43 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:30:43 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:30:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:30:43 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:43Z, a difference of 163509063 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:43 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:43 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:43Z, a difference of 163509072 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:43 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:30:43 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:30:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:30:43 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:43Z, a difference of 163509083 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:43 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:43 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:43Z, a difference of 163509799 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:44 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:44Z, a difference of 163510035 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:44 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:30:44 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:30:44 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:30:44 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:44Z, a difference of 163510046 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:44 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:44 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:44 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:44Z, a difference of 163510059 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:44 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:30:44 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:30:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:30:44 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:44Z, a difference of 163510071 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:44 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:44 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:44Z, a difference of 163510086 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:44 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:30:44 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:30:44 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:30:44 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:44Z, a difference of 163510098 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:44 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:44 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:45 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511076 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:30:45 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511088 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511088 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511088 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511088 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:45 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:45 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:45 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:45 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:45 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:45 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:45 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:45 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511111 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511111 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511111 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:30:45 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511111 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:30:45 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:30:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:30:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:30:45 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:30:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:45 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511162 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:45 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511642 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:45 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511654 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:30:45 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:30:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:30:45 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511664 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:45 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511673 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:30:45 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:30:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:30:45 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511683 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:45 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511693 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:30:45 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:30:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:30:45 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:45Z, a difference of 163511701 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:45 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:46 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:46Z, a difference of 163512869 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:46 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 -2025-11-03 15:30:46 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 查询所有消息 -2025-11-03 15:30:48 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:48Z, a difference of 163514466 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:48 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:48 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:48Z, a difference of 163514479 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:48 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:30:48 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:30:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:30:48 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:48Z, a difference of 163514489 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:48 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:48 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:48Z, a difference of 163514501 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:48 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:30:48 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:30:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:30:48 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:48Z, a difference of 163514513 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:48 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:48 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:48Z, a difference of 163514522 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:48 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:30:48 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:30:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:30:48 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:48Z, a difference of 163514533 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:48 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:48 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:50 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:50Z, a difference of 163516099 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:50 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:30:50 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:50Z, a difference of 163516101 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:50 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:30:50 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:30:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:50 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:50Z, a difference of 163516114 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:30:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:30:57 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:57Z, a difference of 163523113 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:57 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:57 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:57Z, a difference of 163523125 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:57 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:30:57 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:30:57 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:30:57 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:57Z, a difference of 163523135 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:57 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:57 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:57 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:57Z, a difference of 163523145 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:57 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:30:57 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:30:57 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:30:57 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:57Z, a difference of 163523155 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:57 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:57 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:57 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:57Z, a difference of 163523164 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:57 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:30:57 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:30:57 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:30:57 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:57Z, a difference of 163523175 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:57 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:57 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:58 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:58Z, a difference of 163524733 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:58 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:30:58 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:58Z, a difference of 163524748 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:58 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:58Z, a difference of 163524748 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:58 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:58Z, a difference of 163524748 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:58 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:58Z, a difference of 163524748 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:58 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:58 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:58 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:58 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:58 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:58 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:58 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:30:58 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:30:58 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:58Z, a difference of 163524765 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:58 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:58Z, a difference of 163524765 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:58 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:58Z, a difference of 163524765 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:58 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:58Z, a difference of 163524765 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:58 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:30:58 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:30:58 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:30:58 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:30:58 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:30:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:30:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:30:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:58 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:30:58Z, a difference of 163524788 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:30:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:30:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:31:13 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:31:13Z, a difference of 163539231 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:31:13 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:31:13 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:31:13Z, a difference of 163539243 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:31:13 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:31:13 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:31:13 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:31:13 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:31:13Z, a difference of 163539252 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:31:13 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:31:13 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:31:13 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:31:13Z, a difference of 163539262 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:31:13 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:31:13 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:31:13 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:31:13 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:31:13Z, a difference of 163539270 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:31:13 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:31:13 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:31:13 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:31:13Z, a difference of 163539279 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:31:13 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:31:13 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:31:13 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:31:13 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:31:13Z, a difference of 163539287 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:31:13 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:31:13 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:32:59 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:32:59Z, a difference of 163645560 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:32:59 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:32:59 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:32:59Z, a difference of 163645574 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:32:59 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:32:59 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:32:59 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:32:59 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:32:59Z, a difference of 163645582 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:32:59 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:32:59 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:32:59 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:32:59Z, a difference of 163645591 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:32:59 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:32:59 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:32:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:32:59 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:32:59Z, a difference of 163645601 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:32:59 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:32:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:32:59 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:32:59Z, a difference of 163645611 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:32:59 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:32:59 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:32:59 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:32:59 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:32:59Z, a difference of 163645623 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:32:59 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:32:59 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:36:27 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:27Z, a difference of 163853315 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:27 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:36:27 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:27Z, a difference of 163853618 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:27 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:27Z, a difference of 163853618 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:27 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:27Z, a difference of 163853618 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:27 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:27Z, a difference of 163853618 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:27 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:36:27 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:36:27 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:36:27 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:36:27 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:36:27 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:36:27 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:36:27 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:36:27 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:27Z, a difference of 163853636 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:27 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:27Z, a difference of 163853636 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:27 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:27Z, a difference of 163853636 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:27 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:27Z, a difference of 163853636 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:27 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:36:27 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:36:27 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:36:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:36:27 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:36:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:36:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:36:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:36:27 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:27Z, a difference of 163853658 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:36:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:36:28 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:28Z, a difference of 163854941 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:28 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:36:28 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:28Z, a difference of 163854954 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:28 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:36:28 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:36:28 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:36:28 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:28Z, a difference of 163854964 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:28 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:36:28 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:36:28 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:28Z, a difference of 163854973 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:28 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:36:28 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:36:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:36:28 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:28Z, a difference of 163854982 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:28 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:36:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:36:28 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:28Z, a difference of 163854992 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:28 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:36:28 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:36:28 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:36:29 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:36:29Z, a difference of 163855002 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:36:29 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:36:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:37:48 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:48Z, a difference of 163934949 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:37:49 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:49Z, a difference of 163935242 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:49 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:37:49 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:37:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:37:49 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:49Z, a difference of 163935251 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:49 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:37:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:37:49 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:49Z, a difference of 163935260 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:49 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:37:49 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:37:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:37:49 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:49Z, a difference of 163935268 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:49 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:37:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:37:49 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:49Z, a difference of 163935277 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:49 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:37:49 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:37:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:37:49 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:49Z, a difference of 163935286 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:49 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:37:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:37:51 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:51Z, a difference of 163937219 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:51 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:37:51 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:51Z, a difference of 163937251 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:51 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:37:51 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:37:51 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:37:51 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:51Z, a difference of 163937654 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:51 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:37:51 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:37:51 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:51Z, a difference of 163937671 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:51 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:37:51 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:37:51 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:37:51 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:51Z, a difference of 163937684 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:51 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:37:51 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:37:51 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:51Z, a difference of 163937700 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:51 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:37:51 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:37:51 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:37:51 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:37:51Z, a difference of 163937714 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:37:51 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:37:51 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:38:09 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Current time: 2025-11-03T15:38:09Z, a difference of 163955770 milliseconds. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) - at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) - at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) - at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) - at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:89) - at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at com.qf.myafterprojecy.config.SecurityConfig.lambda$0(SecurityConfig.java:90) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) - at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) - 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.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - 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.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - 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.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:893) - 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:750) -2025-11-03 15:38:09 [http-nio-8080-exec-10] INFO c.q.m.controller.AuthController - 用户登录请求: 123456 -2025-11-03 15:38:09 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:09 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:09 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:38:09 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:38:10 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:38:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:38:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:38:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:38:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:38:10 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:38:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:38:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:38:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:38:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:38:10 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:38:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:38:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:10 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:38:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:38:15 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:15 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:15 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:15 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:15 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:38:15 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:15 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:15 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:15 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:15 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:15 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:15 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:15 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:15 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:15 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:15 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:15 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:15 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:38:15 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:38:15 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:38:15 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:38:15 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:38:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:38:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:38:15 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:38:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:38:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:38:50 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/articles,异常消息:不允许访问 -2025-11-03 15:38:50 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.security.access.AccessDeniedException: 不允许访问] -2025-11-03 15:40:38 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:40:39 [Thread-6] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:40:39 [Thread-6] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Destroying Spring FrameworkServlet 'dispatcherServlet' -2025-11-03 15:40:39 [Thread-6] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 10:28:48 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 10:28:48 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 10:28:48 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 10:28:48 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor - Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable +2025-11-05 10:28:48 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor - For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG' +2025-11-05 10:28:49 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 10:28:49 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 60 ms. Found 6 JPA repository interfaces. +2025-11-05 10:28:49 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 10:28:50 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 10:28:50 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 10:28:50 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 10:28:50 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 10:28:50 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 1612 ms +2025-11-05 10:28:50 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 10:28:50 [restartedMain] INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 5.6.12.Final +2025-11-05 10:28:50 [restartedMain] INFO o.h.annotations.common.Version - HCANN000001: Hibernate Commons Annotations {5.1.2.Final} +2025-11-05 10:28:50 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 10:28:51 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 10:28:51 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 10:28:51 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 10:28:51 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 10:28:52 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 10:28:52 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@10fe0bbf, org.springframework.security.web.context.SecurityContextPersistenceFilter@3e4de59c, org.springframework.security.web.header.HeaderWriterFilter@6eb1f8d9, org.springframework.web.filter.CorsFilter@50f192f8, org.springframework.security.web.authentication.logout.LogoutFilter@21edb7f6, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1002/0x00000007c08d1828@48d42636, com.qf.myafterprojecy.config.JwtAuthenticationFilter@31fa9cd1, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@45a4bc62, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@767a8e4a, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@67f73b3a, org.springframework.security.web.session.SessionManagementFilter@498d0689, org.springframework.security.web.access.ExceptionTranslationFilter@64e9c04c, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@7524b704] +2025-11-05 10:28:53 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 10:28:53 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 10:28:53 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 10:28:53 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 5.043 seconds (JVM running for 6.0) +2025-11-05 10:40:52 [http-nio-8080-exec-4] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-05 10:40:52 [http-nio-8080-exec-4] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' +2025-11-05 10:40:52 [http-nio-8080-exec-4] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 1 ms +2025-11-05 10:40:52 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:40:52 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:40:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:40:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:40:52 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:40:52 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:40:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:40:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:40:52 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 10:40:52 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 10:40:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:40:52 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:40:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:40:52 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:40:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:40:52 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:40:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:40:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:40:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:41:37 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:41:37 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:41:37 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:41:37 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:41:37 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:41:37 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:41:37 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:41:37 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:41:37 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 10:41:37 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 10:41:37 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:41:37 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:41:37 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:41:37 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:41:37 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:41:37 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:41:37 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:41:37 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:41:37 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:45:02 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:45:02 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:45:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:45:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:45:02 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:45:02 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:45:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:45:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:45:02 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 10:45:02 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:45:02 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 10:45:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:45:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:45:02 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:45:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:45:02 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:45:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:45:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:45:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:47:53 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:53 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:47:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 10:47:54 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 10:47:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 10:47:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:47:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:47:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 10:47:54 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 10:47:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 10:47:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:47:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:47:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 10:47:54 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 10:47:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:47:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:47:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:47:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 10:47:54 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 10:47:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 10:47:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:47:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:47:54 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:47:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:49:46 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:49:46 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 10:49:46 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 10:49:46 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 10:49:46 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:49:46 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:49:46 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 10:49:46 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 10:49:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 10:49:46 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:49:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:49:46 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 10:49:46 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 10:49:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 10:49:46 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:49:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:49:46 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 10:49:46 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 10:49:46 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 10:49:46 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:49:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:49:46 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:49:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:51:16 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 10:51:16 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 10:51:16 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 10:51:16 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 10:51:16 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 10:51:16 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 10:51:16 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 10:51:16 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 10:51:16 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 10:51:16 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 10:51:16 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:51:16 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 10:51:16 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 10:51:16 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 10:51:16 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 10:51:16 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 10:51:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 10:51:16 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:51:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 10:51:23 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:23 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:23 [http-nio-8080-exec-6] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 10:51:23 [http-nio-8080-exec-6] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共3条数据 +2025-11-05 10:51:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:51:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:51:29 [http-nio-8080-exec-1] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 10:51:29 [http-nio-8080-exec-1] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共3条数据 +2025-11-05 10:52:04 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:52:04 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:52:04 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:52:04 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:52:04 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 10:52:04 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 10:52:47 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:52:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:52:47 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:52:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:52:47 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 10:52:47 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 10:53:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:53:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:53:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 10:53:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 10:53:42 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 10:53:42 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 11:36:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:36:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 11:36:03 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 11:36:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 11:36:03 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:36:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:36:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 11:36:03 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 11:36:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 11:36:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:36:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:36:03 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 11:36:03 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 11:36:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 11:36:03 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:36:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:36:03 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 11:36:03 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 11:36:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 11:36:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:36:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:36:03 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:36:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:42:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:42:22 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 11:42:22 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 11:42:22 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 11:42:22 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:42:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:42:22 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 11:42:22 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 11:42:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 11:42:22 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:42:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:42:22 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 11:42:22 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 11:42:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 11:42:22 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:42:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:42:22 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 11:42:22 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 11:42:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 11:42:22 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:42:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:42:22 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:42:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:43:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:43 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 11:43:44 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:43:44 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:43:44 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:43:44 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:43:44 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:43:44 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:43:44 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:43:44 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:43:44 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:43:44 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:43:44 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 11:43:44 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 11:43:44 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 11:43:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 11:43:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 11:43:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 11:43:44 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:43:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:43:47 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:47 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:47 [http-nio-8080-exec-7] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 11:43:47 [http-nio-8080-exec-7] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共3条数据 +2025-11-05 11:43:57 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:57 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:57 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:43:57 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:43:57 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 11:43:57 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 11:46:48 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:46:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:46:48 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:46:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:46:48 [http-nio-8080-exec-1] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 11:46:48 [http-nio-8080-exec-1] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共3条数据 +2025-11-05 11:47:12 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:12 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:12 [http-nio-8080-exec-6] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 11:47:12 [http-nio-8080-exec-6] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共3条数据 +2025-11-05 11:47:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:51 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 11:47:51 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 11:47:51 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 11:47:51 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:47:51 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:51 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 11:47:51 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 11:47:51 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 11:47:51 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:47:51 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:51 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 11:47:51 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 11:47:51 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 11:47:51 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:47:51 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:51 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 11:47:51 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 11:47:51 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 11:47:51 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:51 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:51 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:47:51 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:56 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 11:47:56 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:47:56 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:47:56 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:47:56 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:47:56 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:47:56 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:47:56 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:47:56 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:47:56 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 11:47:56 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 11:47:56 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 11:47:56 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:47:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 11:47:56 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 11:47:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 11:47:56 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:56 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:57 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:57 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 11:47:57 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 11:47:57 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 11:47:57 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:47:57 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:57 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 11:47:57 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 11:47:57 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 11:47:57 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:47:57 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:57 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 11:47:57 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 11:47:57 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 11:47:57 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:47:57 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:47:57 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 11:47:57 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 11:47:57 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 11:47:57 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:47:57 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:47:57 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:47:57 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:48:33 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:33 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:33 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 11:48:33 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 11:48:44 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:44 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:44 [http-nio-8080-exec-6] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 11:48:44 [http-nio-8080-exec-6] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共3条数据 +2025-11-05 11:48:45 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 11:48:45 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:48:45 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:48:45 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:48:45 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:48:45 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:48:45 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:48:45 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:48:45 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:48:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 11:48:45 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:48:45 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 11:48:45 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 11:48:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 11:48:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 11:48:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:48:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 11:48:45 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:48:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:48:55 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:48:55 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 11:48:55 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 11:48:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 11:48:55 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:48:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:48:55 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 11:48:55 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 11:48:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 11:48:55 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:48:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:48:55 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 11:48:55 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 11:48:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 11:48:55 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:48:55 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:48:55 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 11:48:55 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 11:48:55 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 11:48:55 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:48:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:48:55 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:48:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:49:18 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 11:49:18 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:49:18 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:49:18 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:49:18 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 11:49:18 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:49:18 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:49:18 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:49:18 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 11:49:18 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 11:49:18 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:49:18 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 11:49:18 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 11:49:18 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 11:49:18 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:49:18 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 11:49:18 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 11:49:18 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:18 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:18 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:49:18 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:49:20 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:20 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:20 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:20 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:20 [http-nio-8080-exec-6] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 11:49:20 [http-nio-8080-exec-6] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共3条数据 +2025-11-05 11:49:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:49:29 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 11:49:29 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 11:49:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 11:49:29 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:49:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:49:29 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 11:49:29 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 11:49:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 11:49:29 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:49:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:49:29 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 11:49:29 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 11:49:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 11:49:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:49:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:49:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 11:49:29 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 11:49:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 11:49:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 11:49:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:49:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:49:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:49:29 [http-nio-8080-exec-6] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 11:49:29 [http-nio-8080-exec-6] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共3条数据 +2025-11-05 11:51:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:51:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:51:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:51:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:51:19 [http-nio-8080-exec-3] INFO c.q.m.controller.NonsenseController - 请求保存随机内容 +2025-11-05 11:51:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [你知道吗? 神奇小鹿是彩色的(发癫] +2025-11-05 11:51:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [2] as [TIMESTAMP] - [Wed Nov 05 11:51:19 CST 2025] +2025-11-05 11:51:19 [http-nio-8080-exec-3] INFO c.q.m.service.NonsenseService - 保存随机内容成功,ID: 4 +2025-11-05 11:51:23 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:51:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:51:23 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:51:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:51:23 [http-nio-8080-exec-9] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 11:51:23 [http-nio-8080-exec-9] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 11:53:08 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:53:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:53:08 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:53:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:53:08 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 11:53:08 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 11:55:28 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:55:28 [Thread-6] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:55:28 [Thread-6] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Destroying Spring FrameworkServlet 'dispatcherServlet' +2025-11-05 11:55:28 [Thread-6] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -12879,36 +947,36 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:39 [Thread-6] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:39 [Thread-6] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:40:39 [Thread-6] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:40:39 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:40:39 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:40:39 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:40:39 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:40:39 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 24 ms. Found 5 JPA repository interfaces. -2025-11-03 15:40:39 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:40:39 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:40:39 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:40:39 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:40:39 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:40:39 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 361 ms -2025-11-03 15:40:39 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:40:39 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:40:39 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:40:39 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:40:39 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:40:39 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:39 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:40:40 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@58db4857, org.springframework.security.web.context.SecurityContextPersistenceFilter@60394f4d, org.springframework.security.web.header.HeaderWriterFilter@3f686f27, org.springframework.security.web.authentication.logout.LogoutFilter@5ded07e8, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1268/0x00000007c08b4c28@10830402, com.qf.myafterprojecy.config.JwtAuthenticationFilter@955f64e, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@5f257628, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@23c83bbc, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@43d0aeac, org.springframework.security.web.session.SessionManagementFilter@98ba26d, org.springframework.security.web.access.ExceptionTranslationFilter@3a90b674, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@121868d8] -2025-11-03 15:40:40 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:40:40 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:40:40 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:40:40 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 1.043 seconds (JVM running for 1515.134) -2025-11-03 15:40:40 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:40:41 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:40:41 [Thread-8] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:40:41 [Thread-8] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:28 [Thread-6] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:28 [Thread-6] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:55:28 [Thread-6] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:55:29 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:55:29 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:55:29 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:55:29 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:55:29 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 28 ms. Found 6 JPA repository interfaces. +2025-11-05 11:55:29 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:55:29 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:55:29 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:55:29 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:55:29 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:55:29 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 299 ms +2025-11-05 11:55:29 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:55:29 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:55:29 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:55:29 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:55:29 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:55:29 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:29 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:55:29 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@3989a7ba, org.springframework.security.web.context.SecurityContextPersistenceFilter@5f8be4d7, org.springframework.security.web.header.HeaderWriterFilter@29591c7, org.springframework.web.filter.CorsFilter@49c26efe, org.springframework.security.web.authentication.logout.LogoutFilter@1b741141, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1276/0x00000007c0a55428@73f0ba5c, com.qf.myafterprojecy.config.JwtAuthenticationFilter@4d8aaad2, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@486dbb9e, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@2898efe8, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@4f4b9361, org.springframework.security.web.session.SessionManagementFilter@6c6be331, org.springframework.security.web.access.ExceptionTranslationFilter@24b3fcb5, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@5f7d98a7] +2025-11-05 11:55:29 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:55:29 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:55:29 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:55:29 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.747 seconds (JVM running for 5202.293) +2025-11-05 11:55:29 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:55:32 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:55:32 [Thread-8] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:55:32 [Thread-8] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -12918,7 +986,7 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:41 [Thread-8] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:32 [Thread-8] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -12927,36 +995,36 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:41 [Thread-8] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:41 [Thread-8] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:40:41 [Thread-8] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:40:42 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:40:42 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:40:42 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:40:42 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:40:42 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 27 ms. Found 5 JPA repository interfaces. -2025-11-03 15:40:42 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:40:42 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:40:42 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:40:42 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:40:42 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:40:42 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 313 ms -2025-11-03 15:40:42 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:40:42 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:40:42 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:40:42 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:40:42 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:40:42 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:42 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:40:42 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@38f06b6f, org.springframework.security.web.context.SecurityContextPersistenceFilter@6924501d, org.springframework.security.web.header.HeaderWriterFilter@1ed7bc2a, org.springframework.security.web.authentication.logout.LogoutFilter@76bfee62, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1270/0x00000007c0a6c428@7ad81e3d, com.qf.myafterprojecy.config.JwtAuthenticationFilter@34656fde, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@7bdb64e2, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@584eb15f, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@6724cdbf, org.springframework.security.web.session.SessionManagementFilter@3f9b5c0f, org.springframework.security.web.access.ExceptionTranslationFilter@5f89bc9f, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@4efec347] -2025-11-03 15:40:42 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:40:42 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:40:42 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:40:42 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.824 seconds (JVM running for 1517.671) -2025-11-03 15:40:42 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:40:44 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:40:44 [Thread-12] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:40:44 [Thread-12] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:32 [Thread-8] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:32 [Thread-8] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:55:32 [Thread-8] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:55:32 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:55:32 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:55:32 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:55:32 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:55:32 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 24 ms. Found 6 JPA repository interfaces. +2025-11-05 11:55:32 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:55:32 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:55:32 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:55:32 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:55:32 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:55:32 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 250 ms +2025-11-05 11:55:32 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:55:32 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:55:32 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:55:32 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:55:32 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:55:32 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:32 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:55:33 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@3a230b40, org.springframework.security.web.context.SecurityContextPersistenceFilter@193ca22, org.springframework.security.web.header.HeaderWriterFilter@586510e9, org.springframework.web.filter.CorsFilter@76cf5686, org.springframework.security.web.authentication.logout.LogoutFilter@6c324dfb, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1280/0x00000007c0a76828@36a06dce, com.qf.myafterprojecy.config.JwtAuthenticationFilter@7ef63d13, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@233b828c, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@53292c5a, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@2cc7e319, org.springframework.security.web.session.SessionManagementFilter@423c4b4a, org.springframework.security.web.access.ExceptionTranslationFilter@479cb2de, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@5089bbcd] +2025-11-05 11:55:33 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:55:33 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:55:33 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:55:33 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.593 seconds (JVM running for 5205.631) +2025-11-05 11:55:33 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:55:35 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:55:35 [Thread-12] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:55:35 [Thread-12] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -12966,7 +1034,7 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:44 [Thread-12] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:35 [Thread-12] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -12975,36 +1043,28 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:44 [Thread-12] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:44 [Thread-12] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:40:44 [Thread-12] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:40:44 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:40:44 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:40:44 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:40:44 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:40:44 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 25 ms. Found 5 JPA repository interfaces. -2025-11-03 15:40:44 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:40:44 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:40:44 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:40:44 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:40:44 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:40:44 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 261 ms -2025-11-03 15:40:44 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:40:44 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:40:44 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:40:44 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:40:44 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:40:44 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:44 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:40:45 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@11f443d4, org.springframework.security.web.context.SecurityContextPersistenceFilter@2832878b, org.springframework.security.web.header.HeaderWriterFilter@4491a78, org.springframework.security.web.authentication.logout.LogoutFilter@57048036, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1271/0x00000007c0a8cc28@41675dfb, com.qf.myafterprojecy.config.JwtAuthenticationFilter@b7099ee, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@65d16bec, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@298737f4, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@206b5af3, org.springframework.security.web.session.SessionManagementFilter@3180768a, org.springframework.security.web.access.ExceptionTranslationFilter@7297e736, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@3bdc7ebe] -2025-11-03 15:40:45 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:40:45 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:40:45 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:40:45 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.65 seconds (JVM running for 1520.024) -2025-11-03 15:40:45 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:40:46 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:40:46 [Thread-16] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:40:46 [Thread-16] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:35 [Thread-12] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:35 [Thread-12] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:55:35 [Thread-12] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:55:35 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:55:35 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:55:35 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:55:36 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:55:36 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 26 ms. Found 6 JPA repository interfaces. +2025-11-05 11:55:36 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:55:36 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:55:36 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:55:36 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:55:36 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:55:36 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 258 ms +2025-11-05 11:55:36 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:55:36 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:55:36 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:55:36 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:55:36 [restartedMain] ERROR o.s.o.j.LocalContainerEntityManagerFactoryBean - Failed to initialize JPA EntityManagerFactory: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister +2025-11-05 11:55:36 [restartedMain] ERROR o.s.b.w.e.tomcat.TomcatStarter - Error starting Tomcat context. Exception: org.springframework.beans.factory.UnsatisfiedDependencyException. Message: Error creating bean with name 'jwtAuthenticationFilter': Unsatisfied dependency expressed through field 'userDetailsService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'customUserDetailsService': Unsatisfied dependency expressed through field 'usersRepository'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'usersRepository' defined in com.qf.myafterprojecy.repository.UsersRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot create inner bean '(inner bean)#32893137' of type [org.springframework.orm.jpa.SharedEntityManagerCreator] while setting bean property 'entityManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#32893137': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister +2025-11-05 11:55:36 [restartedMain] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:55:36 [restartedMain] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13014,7 +1074,214 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:46 [Thread-16] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:36 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat +2025-11-05 11:55:36 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:55:36 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:55:36 [restartedMain] INFO o.s.b.a.l.ConditionEvaluationReportLoggingListener - + +Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. +2025-11-05 11:55:36 [restartedMain] ERROR o.s.boot.SpringApplication - Application run failed +org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:163) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:577) ~[spring-context-5.3.23.jar:5.3.23] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) [spring-boot-2.6.13.jar:2.6.13] + at com.qf.myafterprojecy.MyAfterProjecyApplication.main(MyAfterProjecyApplication.java:20) [classes/:na] + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_461] + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_461] + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_461] + at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_461] + at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.6.13.jar:2.6.13] +Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:142) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.(TomcatWebServer.java:104) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:479) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:211) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:182) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:160) ~[spring-boot-2.6.13.jar:2.6.13] + ... 13 common frames omitted +Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'jwtAuthenticationFilter': Unsatisfied dependency expressed through field 'userDetailsService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'customUserDetailsService': Unsatisfied dependency expressed through field 'usersRepository'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'usersRepository' defined in com.qf.myafterprojecy.repository.UsersRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot create inner bean '(inner bean)#32893137' of type [org.springframework.orm.jpa.SharedEntityManagerCreator] while setting bean property 'entityManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#32893137': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:659) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:639) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:213) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:212) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:175) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:170) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAdaptableBeans(ServletContextInitializerBeans.java:155) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.(ServletContextInitializerBeans.java:87) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getServletContextInitializerBeans(ServletWebServerApplicationContext.java:260) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.selfInitialize(ServletWebServerApplicationContext.java:234) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:53) ~[spring-boot-2.6.13.jar:2.6.13] + at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5220) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_461] + at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134) ~[na:1.8.0_461] + at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:835) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_461] + at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134) ~[na:1.8.0_461] + at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:265) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardService.startInternal(StandardService.java:432) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.startup.Tomcat.start(Tomcat.java:486) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:123) ~[spring-boot-2.6.13.jar:2.6.13] + ... 18 common frames omitted +Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'customUserDetailsService': Unsatisfied dependency expressed through field 'usersRepository'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'usersRepository' defined in com.qf.myafterprojecy.repository.UsersRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot create inner bean '(inner bean)#32893137' of type [org.springframework.orm.jpa.SharedEntityManagerCreator] while setting bean property 'entityManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#32893137': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:659) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:639) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:656) ~[spring-beans-5.3.23.jar:5.3.23] + ... 60 common frames omitted +Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'usersRepository' defined in com.qf.myafterprojecy.repository.UsersRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot create inner bean '(inner bean)#32893137' of type [org.springframework.orm.jpa.SharedEntityManagerCreator] while setting bean property 'entityManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#32893137': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:389) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:134) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1707) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1452) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:656) ~[spring-beans-5.3.23.jar:5.3.23] + ... 74 common frames omitted +Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#32893137': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:342) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:113) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:693) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:510) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:374) ~[spring-beans-5.3.23.jar:5.3.23] + ... 87 common frames omitted +Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:330) ~[spring-beans-5.3.23.jar:5.3.23] + ... 95 common frames omitted +Caused by: javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:421) ~[spring-orm-5.3.23.jar:5.3.23] + at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-5.3.23.jar:5.3.23] + at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.23.jar:5.3.23] + ... 102 common frames omitted +Caused by: org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:123) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:77) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.metamodel.internal.MetamodelImpl.initialize(MetamodelImpl.java:182) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.internal.SessionFactoryImpl.(SessionFactoryImpl.java:319) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1498) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58) ~[spring-orm-5.3.23.jar:5.3.23] + at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.3.23.jar:5.3.23] + at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-5.3.23.jar:5.3.23] + ... 106 common frames omitted +Caused by: org.hibernate.InstantiationException: could not instantiate test object : com.qf.myafterprojecy.pojo.Message + at org.hibernate.engine.internal.UnsavedValueFactory.instantiate(UnsavedValueFactory.java:43) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.engine.internal.UnsavedValueFactory.getUnsavedIdentifierValue(UnsavedValueFactory.java:68) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.tuple.PropertyFactory.buildIdentifierAttribute(PropertyFactory.java:65) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.tuple.entity.EntityMetamodel.(EntityMetamodel.java:142) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.persister.entity.AbstractEntityPersister.(AbstractEntityPersister.java:613) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.persister.entity.SingleTableEntityPersister.(SingleTableEntityPersister.java:126) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at sun.reflect.GeneratedConstructorAccessor93.newInstance(Unknown Source) ~[na:na] + at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_461] + at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_461] + at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:96) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + ... 114 common frames omitted +Caused by: java.lang.reflect.InvocationTargetException: null + at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_461] + at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_461] + at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_461] + at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_461] + at org.hibernate.engine.internal.UnsavedValueFactory.instantiate(UnsavedValueFactory.java:40) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + ... 123 common frames omitted +Caused by: java.lang.Error: Unresolved compilation problem: + Syntax error on token "@", delete this token + + at com.qf.myafterprojecy.pojo.Message.(Message.java:24) ~[classes/:na] + ... 128 common frames omitted +2025-11-05 11:55:38 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:55:38 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:55:38 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:55:38 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:55:38 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 32 ms. Found 6 JPA repository interfaces. +2025-11-05 11:55:39 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:55:39 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:55:39 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:55:39 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:55:39 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:55:39 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 299 ms +2025-11-05 11:55:39 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:55:39 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:55:39 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:55:39 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:55:39 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:55:39 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:39 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:55:39 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@727884dd, org.springframework.security.web.context.SecurityContextPersistenceFilter@288616bc, org.springframework.security.web.header.HeaderWriterFilter@34425d89, org.springframework.web.filter.CorsFilter@1d06fae5, org.springframework.security.web.authentication.logout.LogoutFilter@2fe80849, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1285/0x00000007c0aa3828@8488a53, com.qf.myafterprojecy.config.JwtAuthenticationFilter@1bd01827, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@33ab7138, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@1523dcd1, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@499df392, org.springframework.security.web.session.SessionManagementFilter@423c0fc9, org.springframework.security.web.access.ExceptionTranslationFilter@3d14d440, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@58d24e11] +2025-11-05 11:55:39 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:55:39 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:55:39 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:55:39 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.773 seconds (JVM running for 5212.041) +2025-11-05 11:55:39 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:55:40 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:55:41 [Thread-16] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:55:41 [Thread-16] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 11:55:41 [Thread-16] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13023,36 +1290,46 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:46 [Thread-16] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:46 [Thread-16] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:40:46 [Thread-16] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:40:46 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:40:46 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:40:46 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:40:47 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:40:47 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 29 ms. Found 5 JPA repository interfaces. -2025-11-03 15:40:47 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:40:47 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:40:47 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:40:47 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:40:47 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:40:47 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 412 ms -2025-11-03 15:40:47 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:40:47 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:40:47 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:40:47 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:40:47 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:40:47 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:47 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:40:47 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@1c172c9c, org.springframework.security.web.context.SecurityContextPersistenceFilter@15dec080, org.springframework.security.web.header.HeaderWriterFilter@44eb1354, org.springframework.security.web.authentication.logout.LogoutFilter@2ad035f7, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1272/0x00000007c0aa2028@13c73f9b, com.qf.myafterprojecy.config.JwtAuthenticationFilter@761726e0, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@4c6c9143, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@50014a29, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@4b470fb, org.springframework.security.web.session.SessionManagementFilter@135d91fa, org.springframework.security.web.access.ExceptionTranslationFilter@10a93840, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@33ca4b1c] -2025-11-03 15:40:47 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:40:47 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:40:47 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:40:47 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.847 seconds (JVM running for 1522.618) -2025-11-03 15:40:47 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:40:51 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:40:51 [Thread-20] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:40:51 [Thread-20] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:41 [Thread-16] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:41 [Thread-16] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:55:41 [Thread-16] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:55:41 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:55:41 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:55:41 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:55:41 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:55:41 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 31 ms. Found 6 JPA repository interfaces. +2025-11-05 11:55:41 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:55:41 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:55:41 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:55:41 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:55:41 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:55:41 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 262 ms +2025-11-05 11:55:41 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:55:41 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:55:41 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:55:41 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:55:41 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:55:41 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:41 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:55:42 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@5c73e9a1, org.springframework.security.web.context.SecurityContextPersistenceFilter@7ac0b945, org.springframework.security.web.header.HeaderWriterFilter@327d23d5, org.springframework.web.filter.CorsFilter@4af5e261, org.springframework.security.web.authentication.logout.LogoutFilter@476dbd61, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1288/0x00000007c0abb028@7ad5d520, com.qf.myafterprojecy.config.JwtAuthenticationFilter@5192e0b7, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@7681f35, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@5c50e786, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@397bbcd0, org.springframework.security.web.session.SessionManagementFilter@5566295b, org.springframework.security.web.access.ExceptionTranslationFilter@47b74c44, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@2acbe37] +2025-11-05 11:55:42 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:55:42 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:55:42 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:55:42 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.712 seconds (JVM running for 5214.606) +2025-11-05 11:55:42 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:55:42 [http-nio-8080-exec-1] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-05 11:55:42 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' +2025-11-05 11:55:42 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 0 ms +2025-11-05 11:55:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:55:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:55:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:55:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:55:42 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 11:55:42 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 11:55:44 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:55:44 [Thread-23] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:55:44 [Thread-23] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Destroying Spring FrameworkServlet 'dispatcherServlet' +2025-11-05 11:55:44 [Thread-23] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13062,7 +1339,7 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:51 [Thread-20] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:44 [Thread-23] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13071,36 +1348,36 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:51 [Thread-20] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:51 [Thread-20] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:40:51 [Thread-20] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:40:51 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:40:51 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:40:51 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:40:51 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:40:51 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 5 JPA repository interfaces. -2025-11-03 15:40:51 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:40:51 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:40:51 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:40:51 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:40:51 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:40:51 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 289 ms -2025-11-03 15:40:51 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:40:51 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:40:51 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:40:51 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:40:51 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:40:51 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:52 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:40:52 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@f4746e4, org.springframework.security.web.context.SecurityContextPersistenceFilter@56910d45, org.springframework.security.web.header.HeaderWriterFilter@384333ae, org.springframework.security.web.authentication.logout.LogoutFilter@6c9885, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1273/0x00000007c0ab8c28@4a44e32b, com.qf.myafterprojecy.config.JwtAuthenticationFilter@51f7cf0e, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@18f7de78, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@3908508b, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@41e3f5aa, org.springframework.security.web.session.SessionManagementFilter@78c3fcba, org.springframework.security.web.access.ExceptionTranslationFilter@4aa0910e, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@14856992] -2025-11-03 15:40:52 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:40:52 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:40:52 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:40:52 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.729 seconds (JVM running for 1527.136) -2025-11-03 15:40:52 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:40:53 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:40:53 [Thread-24] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:40:53 [Thread-24] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:44 [Thread-23] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:44 [Thread-23] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:55:44 [Thread-23] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:55:44 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:55:44 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:55:44 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:55:45 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:55:45 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 18 ms. Found 6 JPA repository interfaces. +2025-11-05 11:55:45 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:55:45 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:55:45 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:55:45 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:55:45 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:55:45 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 190 ms +2025-11-05 11:55:45 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:55:45 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:55:45 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:55:45 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:55:45 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:55:45 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:45 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:55:45 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@69a481a2, org.springframework.security.web.context.SecurityContextPersistenceFilter@69c88343, org.springframework.security.web.header.HeaderWriterFilter@ff58f0e, org.springframework.web.filter.CorsFilter@5b446714, org.springframework.security.web.authentication.logout.LogoutFilter@52b9458b, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1294/0x00000007c0ad7428@42cc5cc8, com.qf.myafterprojecy.config.JwtAuthenticationFilter@66c7f0b4, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@27a22215, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@40c5410, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@71ddaaeb, org.springframework.security.web.session.SessionManagementFilter@6303064c, org.springframework.security.web.access.ExceptionTranslationFilter@53a3b0e7, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@5d685c1c] +2025-11-05 11:55:45 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:55:45 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:55:45 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:55:45 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.506 seconds (JVM running for 5217.893) +2025-11-05 11:55:45 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:55:50 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:55:51 [Thread-27] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:55:51 [Thread-27] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13110,7 +1387,46 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:53 [Thread-24] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:51 [Thread-27] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:51 [Thread-27] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:55:51 [Thread-27] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:55:51 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:55:51 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:55:51 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:55:51 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:55:51 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 6 JPA repository interfaces. +2025-11-05 11:55:51 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:55:51 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:55:51 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:55:51 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:55:51 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:55:51 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 215 ms +2025-11-05 11:55:51 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:55:51 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:55:51 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:55:51 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:55:51 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:55:51 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:51 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:55:51 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@5b371e11, org.springframework.security.web.context.SecurityContextPersistenceFilter@1ef86fa, org.springframework.security.web.header.HeaderWriterFilter@28727687, org.springframework.web.filter.CorsFilter@463a460, org.springframework.security.web.authentication.logout.LogoutFilter@33d1e495, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1297/0x00000007c0af6028@23d2ac9, com.qf.myafterprojecy.config.JwtAuthenticationFilter@1d666d12, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@42249b71, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@79590bfc, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@e16995c, org.springframework.security.web.session.SessionManagementFilter@33b0955d, org.springframework.security.web.access.ExceptionTranslationFilter@6b650da3, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@24141fab] +2025-11-05 11:55:51 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:55:51 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:55:51 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:55:51 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.602 seconds (JVM running for 5224.286) +2025-11-05 11:55:51 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:55:53 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:55:53 [Thread-31] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:55:53 [Thread-31] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 11:55:53 [Thread-31] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13119,75 +1435,36 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:40:53 [Thread-24] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:53 [Thread-24] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:40:53 [Thread-24] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:40:54 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:40:54 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:40:54 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:40:54 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:40:54 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 5 JPA repository interfaces. -2025-11-03 15:40:54 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:40:54 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:40:54 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:40:54 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:40:54 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:40:54 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 212 ms -2025-11-03 15:40:54 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:40:54 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:40:54 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:40:54 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:40:54 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:40:54 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:40:54 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:40:54 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@3bc688a7, org.springframework.security.web.context.SecurityContextPersistenceFilter@3fdecc7, org.springframework.security.web.header.HeaderWriterFilter@20100605, org.springframework.security.web.authentication.logout.LogoutFilter@3eaeb27f, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1274/0x00000007c0acc028@3e76b1d, com.qf.myafterprojecy.config.JwtAuthenticationFilter@7dca4f2c, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@24e82e71, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@46824c7, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@3ea87e2e, org.springframework.security.web.session.SessionManagementFilter@7d057c49, org.springframework.security.web.access.ExceptionTranslationFilter@3ef33839, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@7a8ebffb] -2025-11-03 15:40:54 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:40:54 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:40:54 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:40:54 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.531 seconds (JVM running for 1529.4) -2025-11-03 15:40:54 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:41:03 [http-nio-8080-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2025-11-03 15:41:03 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2025-11-03 15:41:03 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 1 ms -2025-11-03 15:41:03 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:03 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:03 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:41:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:03 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:41:03 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:41:03 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:41:03 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:41:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:41:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:41:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:41:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:41:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:41:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:41:24 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/articles,异常消息:不允许访问 -2025-11-03 15:41:24 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.security.access.AccessDeniedException: 不允许访问] -2025-11-03 15:42:39 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:42:39 [Thread-28] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:42:39 [Thread-28] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Destroying Spring FrameworkServlet 'dispatcherServlet' -2025-11-03 15:42:39 [Thread-28] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:53 [Thread-31] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:53 [Thread-31] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:55:53 [Thread-31] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:55:53 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:55:53 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:55:53 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:55:53 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:55:53 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 21 ms. Found 6 JPA repository interfaces. +2025-11-05 11:55:53 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:55:53 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:55:53 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:55:53 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:55:53 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:55:53 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 200 ms +2025-11-05 11:55:53 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:55:53 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:55:53 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:55:53 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:55:53 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:55:53 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:53 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:55:53 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@33629128, org.springframework.security.web.context.SecurityContextPersistenceFilter@39feec8b, org.springframework.security.web.header.HeaderWriterFilter@158e279b, org.springframework.web.filter.CorsFilter@15735521, org.springframework.security.web.authentication.logout.LogoutFilter@1863360c, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1300/0x00000007c0b0d028@32a971d8, com.qf.myafterprojecy.config.JwtAuthenticationFilter@3da763a1, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@4bc5a9a4, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@2f13edb8, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@695feb94, org.springframework.security.web.session.SessionManagementFilter@5665e708, org.springframework.security.web.access.ExceptionTranslationFilter@7cd1d31b, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@74b7fbc2] +2025-11-05 11:55:54 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:55:54 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:55:54 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:55:54 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.537 seconds (JVM running for 5226.577) +2025-11-05 11:55:54 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:55:55 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:55:55 [Thread-35] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:55:55 [Thread-35] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13197,46 +1474,7 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:42:39 [Thread-28] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:42:39 [Thread-28] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:42:39 [Thread-28] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:42:39 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:42:39 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:42:39 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:42:40 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:42:40 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 32 ms. Found 5 JPA repository interfaces. -2025-11-03 15:42:40 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:42:40 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:42:40 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:42:40 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:42:40 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:42:40 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 280 ms -2025-11-03 15:42:40 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:42:40 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:42:40 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:42:40 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:42:40 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:42:40 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:42:40 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:42:40 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@5c4b1fef, org.springframework.security.web.context.SecurityContextPersistenceFilter@4508fabf, org.springframework.security.web.header.HeaderWriterFilter@50ec5b2, org.springframework.security.web.authentication.logout.LogoutFilter@500226b0, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1278/0x00000007c0aecc28@67478f06, com.qf.myafterprojecy.config.JwtAuthenticationFilter@67864494, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@5d776503, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@2e27184a, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@19bc6e04, org.springframework.security.web.session.SessionManagementFilter@43c7f820, org.springframework.security.web.access.ExceptionTranslationFilter@1ca098ed, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@47d77626] -2025-11-03 15:42:40 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:42:40 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:42:40 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:42:40 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.713 seconds (JVM running for 1635.471) -2025-11-03 15:42:40 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:42:44 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:42:44 [Thread-32] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:42:44 [Thread-32] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: - sun.misc.Unsafe.park(Native Method) - java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) - java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) - java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) - java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) - java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) - java.lang.Thread.run(Thread.java:750) -2025-11-03 15:42:44 [Thread-32] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:55 [Thread-35] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13245,36 +1483,36 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:42:44 [Thread-32] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:42:44 [Thread-32] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:42:44 [Thread-32] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:42:44 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:42:44 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:42:44 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:42:44 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:42:44 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 23 ms. Found 5 JPA repository interfaces. -2025-11-03 15:42:44 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:42:44 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:42:44 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:42:44 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:42:44 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:42:44 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 277 ms -2025-11-03 15:42:44 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:42:44 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:42:44 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:42:44 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:42:44 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:42:44 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:42:44 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:42:45 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@2de91f41, org.springframework.security.web.context.SecurityContextPersistenceFilter@145af63d, org.springframework.security.web.header.HeaderWriterFilter@6981b685, org.springframework.security.web.authentication.logout.LogoutFilter@184bfe45, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1279/0x00000007c0b01c28@5a28d016, com.qf.myafterprojecy.config.JwtAuthenticationFilter@32ee9a15, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@4f1f9fc0, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@2bce3d38, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@798b60b7, org.springframework.security.web.session.SessionManagementFilter@5474853e, org.springframework.security.web.access.ExceptionTranslationFilter@68766d03, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@4ec4f5db] -2025-11-03 15:42:45 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:42:45 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:42:45 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:42:45 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.71 seconds (JVM running for 1640.079) -2025-11-03 15:42:45 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:42:46 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:42:46 [Thread-36] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:42:46 [Thread-36] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:55 [Thread-35] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:55 [Thread-35] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:55:55 [Thread-35] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:55:55 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:55:55 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:55:55 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:55:55 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:55:56 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 11:55:56 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:55:56 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:55:56 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:55:56 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:55:56 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:55:56 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 180 ms +2025-11-05 11:55:56 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:55:56 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:55:56 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:55:56 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:55:56 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:55:56 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:56 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:55:56 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@3ae7c3d7, org.springframework.security.web.context.SecurityContextPersistenceFilter@35322e09, org.springframework.security.web.header.HeaderWriterFilter@38838154, org.springframework.web.filter.CorsFilter@4c73ab76, org.springframework.security.web.authentication.logout.LogoutFilter@1484b2ce, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1303/0x00000007c0b21028@796c871, com.qf.myafterprojecy.config.JwtAuthenticationFilter@1d8f54fd, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@2e77e007, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@ada5dbc, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@21cafec9, org.springframework.security.web.session.SessionManagementFilter@9f67e94, org.springframework.security.web.access.ExceptionTranslationFilter@44ebe6be, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@1aa44776] +2025-11-05 11:55:56 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:55:56 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:55:56 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:55:56 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.46 seconds (JVM running for 5228.83) +2025-11-05 11:55:56 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:55:59 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:55:59 [Thread-39] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:55:59 [Thread-39] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13284,7 +1522,7 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:42:46 [Thread-36] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:59 [Thread-39] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13293,36 +1531,36 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:42:46 [Thread-36] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:42:46 [Thread-36] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:42:46 [Thread-36] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:42:46 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:42:46 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:42:46 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:42:47 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:42:47 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 18 ms. Found 5 JPA repository interfaces. -2025-11-03 15:42:47 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:42:47 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:42:47 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:42:47 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:42:47 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:42:47 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 211 ms -2025-11-03 15:42:47 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:42:47 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:42:47 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:42:47 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:42:47 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:42:47 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:42:47 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:42:47 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@845048d, org.springframework.security.web.context.SecurityContextPersistenceFilter@7158dc9f, org.springframework.security.web.header.HeaderWriterFilter@54dce1f3, org.springframework.security.web.authentication.logout.LogoutFilter@31f338fe, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1280/0x00000007c0b14428@6c77791d, com.qf.myafterprojecy.config.JwtAuthenticationFilter@26a49f16, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@5baec25b, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@68ce63a4, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@75c0c661, org.springframework.security.web.session.SessionManagementFilter@62d0eb1, org.springframework.security.web.access.ExceptionTranslationFilter@6479c4b3, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@747f61f3] -2025-11-03 15:42:47 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:42:47 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:42:47 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:42:47 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.554 seconds (JVM running for 1642.359) -2025-11-03 15:42:47 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:42:49 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:42:50 [Thread-40] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:42:50 [Thread-40] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:55:59 [Thread-39] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:55:59 [Thread-39] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:55:59 [Thread-39] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:56:00 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:56:00 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:56:00 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:56:00 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:56:00 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 6 JPA repository interfaces. +2025-11-05 11:56:00 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:56:00 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:56:00 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:56:00 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:56:00 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:56:00 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 190 ms +2025-11-05 11:56:00 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:56:00 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:56:00 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:56:00 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:56:00 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:56:00 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:00 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:56:00 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@589b6a1, org.springframework.security.web.context.SecurityContextPersistenceFilter@3d2c9c86, org.springframework.security.web.header.HeaderWriterFilter@6edc8945, org.springframework.web.filter.CorsFilter@37aa71ff, org.springframework.security.web.authentication.logout.LogoutFilter@1ff99707, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1306/0x00000007c0b3c028@55bb1680, com.qf.myafterprojecy.config.JwtAuthenticationFilter@31fa86e5, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@244ff6cf, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@570e3462, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@42c5c383, org.springframework.security.web.session.SessionManagementFilter@38253a41, org.springframework.security.web.access.ExceptionTranslationFilter@a1b455d, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@68d70eeb] +2025-11-05 11:56:00 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:56:00 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:56:00 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:56:00 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.525 seconds (JVM running for 5233.145) +2025-11-05 11:56:00 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:56:02 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:56:02 [Thread-43] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:56:02 [Thread-43] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13332,7 +1570,7 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:42:50 [Thread-40] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:56:02 [Thread-43] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13341,36 +1579,36 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:42:50 [Thread-40] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:42:50 [Thread-40] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:42:50 [Thread-40] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:42:50 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:42:50 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:42:50 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:42:50 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:42:50 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 5 JPA repository interfaces. -2025-11-03 15:42:50 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:42:50 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:42:50 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:42:50 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:42:50 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:42:50 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 200 ms -2025-11-03 15:42:50 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:42:50 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:42:50 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:42:50 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:42:50 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:42:50 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:42:50 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:42:50 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@704410d, org.springframework.security.web.context.SecurityContextPersistenceFilter@2e0c416, org.springframework.security.web.header.HeaderWriterFilter@c8d01b8, org.springframework.security.web.authentication.logout.LogoutFilter@5e612c1e, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1281/0x00000007c0b2ec28@37724a21, com.qf.myafterprojecy.config.JwtAuthenticationFilter@6ba3fd72, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@1e016d2a, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@7ae53f93, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@2a857497, org.springframework.security.web.session.SessionManagementFilter@6ff9f324, org.springframework.security.web.access.ExceptionTranslationFilter@7fdc6424, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@6a25f785] -2025-11-03 15:42:50 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:42:50 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:42:50 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:42:50 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.604 seconds (JVM running for 1645.764) -2025-11-03 15:42:50 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:42:52 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) -2025-11-03 15:42:52 [Thread-44] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2025-11-03 15:42:52 [Thread-44] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:56:02 [Thread-43] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:02 [Thread-43] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:56:02 [Thread-43] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:56:02 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:56:02 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:56:02 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:56:02 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:56:02 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 18 ms. Found 6 JPA repository interfaces. +2025-11-05 11:56:02 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:56:02 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:56:02 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:56:02 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:56:02 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:56:02 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 183 ms +2025-11-05 11:56:02 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:56:02 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:56:02 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:56:02 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:56:02 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:56:02 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:02 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:56:02 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@b4a7571, org.springframework.security.web.context.SecurityContextPersistenceFilter@70cd4972, org.springframework.security.web.header.HeaderWriterFilter@30709ef5, org.springframework.web.filter.CorsFilter@72a66f4f, org.springframework.security.web.authentication.logout.LogoutFilter@567f5e44, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1309/0x00000007c0b4f028@d115fb8, com.qf.myafterprojecy.config.JwtAuthenticationFilter@6bd647f0, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@62d68d22, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@49edf586, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@150c8602, org.springframework.security.web.session.SessionManagementFilter@37b647a7, org.springframework.security.web.access.ExceptionTranslationFilter@2d965e3, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@651af0f2] +2025-11-05 11:56:02 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:56:02 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:56:02 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:56:02 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.48 seconds (JVM running for 5235.333) +2025-11-05 11:56:02 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:56:10 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:56:10 [Thread-47] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:56:10 [Thread-47] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13380,7 +1618,85 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:42:52 [Thread-44] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: +2025-11-05 11:56:10 [Thread-47] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:10 [Thread-47] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:56:10 [Thread-47] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:56:10 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:56:10 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:56:10 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:56:10 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:56:10 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 6 JPA repository interfaces. +2025-11-05 11:56:10 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:56:10 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:56:10 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:56:10 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:56:10 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:56:10 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 184 ms +2025-11-05 11:56:10 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:56:10 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:56:10 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:56:10 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:56:10 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:56:10 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:11 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:56:11 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@54fc9fb2, org.springframework.security.web.context.SecurityContextPersistenceFilter@4511658b, org.springframework.security.web.header.HeaderWriterFilter@1f682423, org.springframework.web.filter.CorsFilter@77a68801, org.springframework.security.web.authentication.logout.LogoutFilter@76d38fbc, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1312/0x00000007c0b62c28@68fa2caa, com.qf.myafterprojecy.config.JwtAuthenticationFilter@34da27a, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@5c95a8fb, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@1b88f9de, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@44c5d6c0, org.springframework.security.web.session.SessionManagementFilter@6a3695e6, org.springframework.security.web.access.ExceptionTranslationFilter@755d880a, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@6bc84856] +2025-11-05 11:56:11 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:56:11 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:56:11 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:56:11 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.462 seconds (JVM running for 5243.674) +2025-11-05 11:56:11 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:56:45 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:56:45 [Thread-51] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:56:45 [Thread-51] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 11:56:45 [Thread-51] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:45 [Thread-51] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:56:45 [Thread-51] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:56:45 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:56:45 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:56:45 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:56:45 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:56:45 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 23 ms. Found 6 JPA repository interfaces. +2025-11-05 11:56:45 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:56:46 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:56:46 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:56:46 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:56:46 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:56:46 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 195 ms +2025-11-05 11:56:46 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:56:46 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:56:46 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:56:46 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:56:46 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:56:46 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:46 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:56:46 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@75d7bde1, org.springframework.security.web.context.SecurityContextPersistenceFilter@495c8be6, org.springframework.security.web.header.HeaderWriterFilter@3caf915f, org.springframework.web.filter.CorsFilter@4fb01c85, org.springframework.security.web.authentication.logout.LogoutFilter@1170c3d6, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1315/0x00000007c0b75c28@3f42d196, com.qf.myafterprojecy.config.JwtAuthenticationFilter@14fbcbf2, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@3c0d2e9, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@43a58ea7, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@4bde4fb5, org.springframework.security.web.session.SessionManagementFilter@77b106ad, org.springframework.security.web.access.ExceptionTranslationFilter@72e71622, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@77a1cd54] +2025-11-05 11:56:46 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:56:46 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:56:46 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:56:46 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.502 seconds (JVM running for 5278.821) +2025-11-05 11:56:46 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:56:48 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:56:48 [Thread-55] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:56:48 [Thread-55] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 11:56:48 [Thread-55] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) @@ -13389,3917 +1705,7922 @@ io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-01T18:05:34Z. Curren java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) -2025-11-03 15:42:52 [Thread-44] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:42:52 [Thread-44] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... -2025-11-03 15:42:52 [Thread-44] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. -2025-11-03 15:42:52 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 25956 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-03 15:42:52 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-03 15:42:52 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-03 15:42:52 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-03 15:42:52 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 17 ms. Found 5 JPA repository interfaces. -2025-11-03 15:42:52 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-03 15:42:52 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-03 15:42:52 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-03 15:42:52 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-03 15:42:52 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-03 15:42:52 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 184 ms -2025-11-03 15:42:52 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-03 15:42:52 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-03 15:42:52 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-03 15:42:52 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-03 15:42:52 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-03 15:42:52 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-03 15:42:52 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-03 15:42:53 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@5fd66e48, org.springframework.security.web.context.SecurityContextPersistenceFilter@553909bc, org.springframework.security.web.header.HeaderWriterFilter@f618e0f, org.springframework.security.web.authentication.logout.LogoutFilter@2ff17239, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1282/0x00000007c0b41428@4fb95de1, com.qf.myafterprojecy.config.JwtAuthenticationFilter@673e2676, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@1746b1dd, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@145444cc, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@e1f7b41, org.springframework.security.web.session.SessionManagementFilter@1bc7b5ac, org.springframework.security.web.access.ExceptionTranslationFilter@78875759, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@5924e917] -2025-11-03 15:42:53 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-03 15:42:53 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-03 15:42:53 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-03 15:42:53 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.469 seconds (JVM running for 1647.938) -2025-11-03 15:42:53 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged -2025-11-03 15:47:32 [http-nio-8080-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2025-11-03 15:47:32 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2025-11-03 15:47:32 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 1 ms -2025-11-03 15:47:32 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:32 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:32 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:47:32 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:32 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:32 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:32 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:32 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:32 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:32 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:32 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:32 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:32 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:32 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:47:32 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:47:32 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:47:32 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:47:32 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:47:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:47:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:47:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:47:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:35 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:47:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:35 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:35 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:35 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:35 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:35 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:35 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:35 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:47:35 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:47:35 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:47:35 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:47:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:47:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:47:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:47:35 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:47:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:42 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:47:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:42 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:47:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:47:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:42 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:47:42 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:47:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:47:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:47:42 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:47:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:47:46 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:46 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:46 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:47:46 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:46 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:46 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:46 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:46 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:46 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:46 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:46 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:46 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:47:46 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:47:46 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:47:46 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:47:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:47:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:47:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:47:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:47:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:49 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:47:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:47:50 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:47:50 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:47:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:47:50 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:47:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:47:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:47:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:47:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:47:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:50 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:47:50 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:47:50 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:47:50 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:47:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:47:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:47:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:47:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:47:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:58 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:47:58 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:58 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:58 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:58 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:47:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:47:58 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:47:58 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:47:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:47:58 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:47:58 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:47:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:47:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:47:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:48:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:48:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:48:24 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:48:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:24 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:48:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:48:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:48:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:48:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:24 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:48:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:48:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:48:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:48:25 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:48:25 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:48:25 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:48:25 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:48:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:48:25 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:48:25 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:48:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:48:52 [http-nio-8080-exec-5] INFO c.q.m.controller.AuthController - 用户登录请求: 123456 -2025-11-03 15:48:52 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:48:52 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:50:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:10 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-03 15:50:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:10 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-03 15:50:10 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-03 15:50:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:50:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:50:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:10 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=4 -2025-11-03 15:50:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:50:19 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:50:19 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:50:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:50:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:50:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:50:19 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:50:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:50:19 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:50:19 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:50:19 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:50:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:50:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:19 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:50:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:40 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:40 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:50:40 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:50:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:50:40 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:50:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:40 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:50:40 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:50:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:50:40 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:50:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:40 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:50:40 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:50:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:50:40 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:40 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:50:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:58 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:50:58 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:50:58 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:50:58 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:50:58 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:50:58 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:50:58 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:50:58 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:50:58 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:50:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:50:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:50:58 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:50:58 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:50:58 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:50:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:50:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:50:58 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:59 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:59 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:50:59 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:50:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:50:59 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:50:59 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:59 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:50:59 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:50:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:50:59 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:50:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:50:59 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:50:59 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:50:59 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:50:59 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:50:59 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:50:59 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:50:59 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:51:01 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:01 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:01 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:01 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:01 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:01 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:01 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:01 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:01 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:51:01 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:51:01 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:51:01 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:51:01 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:51:01 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:01 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:01 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:01 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:01 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:51:01 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:51:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:51:03 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:51:03 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:51:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:51:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:51:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:51:03 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:51:03 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:51:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:51:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:51:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:51:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:51:03 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:51:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:51:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:03 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:51:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:51:07 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:07 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:07 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:07 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:07 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 -2025-11-03 15:51:07 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 查询所有消息 -2025-11-03 15:51:13 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:13 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:13 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:51:13 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:51:13 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 -2025-11-03 15:51:13 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 查询所有消息 -2025-11-03 15:53:59 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:53:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:53:59 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:53:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:53:59 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 -2025-11-03 15:53:59 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 查询所有消息 -2025-11-03 15:54:02 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:02 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:02 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:02 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:02 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 -2025-11-03 15:54:02 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 查询所有消息 -2025-11-03 15:54:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:34 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 -2025-11-03 15:54:34 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 查询所有消息 -2025-11-03 15:54:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:54:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:54:43 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:54:43 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:54:43 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:54:43 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:54:43 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:54:43 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:54:43 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:54:43 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:54:43 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:54:43 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:54:43 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:54:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:54:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:54:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:54:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:54:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:54:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:54:44 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:54:44 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:54:44 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:54:44 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:54:44 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:54:44 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:54:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:54:44 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:54:44 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:54:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:54:44 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:54:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:54:44 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:54:44 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:54:44 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:54:44 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:54:44 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:54:44 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:54:44 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:23 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:23 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:58:24 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:58:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:58:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:58:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:24 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:58:24 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:58:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:58:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:58:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:58:24 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:58:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:58:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:24 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:58:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:26 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:26 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:58:26 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:58:26 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:58:26 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:58:26 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:26 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:58:26 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:58:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:58:26 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:58:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:26 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:58:26 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:58:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:58:26 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:26 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:26 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:58:26 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:35 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:58:35 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:58:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:58:35 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:58:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:58:35 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:58:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:58:35 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:58:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:58:35 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:58:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:58:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:35 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:58:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:58:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:58:42 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:58:42 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:58:42 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:58:42 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:58:42 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:58:42 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:58:42 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:58:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:58:42 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:58:42 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:58:42 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:58:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:58:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:58:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:58:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:58:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:58:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:58:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:16 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:59:16 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:16 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:16 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:16 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:16 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:16 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:16 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:16 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:16 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:16 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:16 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:59:16 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:59:16 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:59:16 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:59:16 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:59:16 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:59:16 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:17 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:59:17 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:17 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:17 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:17 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:17 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:17 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:17 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:17 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:17 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:59:17 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:59:17 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:59:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:59:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:59:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:59:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:22 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:59:22 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:22 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:22 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:22 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:22 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:22 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:22 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:22 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:22 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:22 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:59:22 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:59:22 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:59:22 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:59:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:59:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:59:22 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:23 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:23 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:59:23 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:59:23 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:59:23 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:23 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:59:23 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:59:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:59:23 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:23 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:59:23 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:59:23 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:59:23 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:23 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:23 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:23 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:59:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:24 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:24 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:24 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:24 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:24 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:24 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:24 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:59:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:59:24 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:24 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:59:24 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:59:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:59:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:59:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:27 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:27 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:59:27 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:59:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:59:27 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:27 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:59:27 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:59:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:59:27 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:27 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:59:27 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:59:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:59:27 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:27 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:28 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:59:28 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:28 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:28 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:28 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:28 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:28 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:28 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:28 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:28 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:59:28 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:28 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:59:28 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:59:28 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:28 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:59:28 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:59:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:59:28 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:28 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:28 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:28 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 15:59:29 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 15:59:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:59:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:29 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 15:59:29 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 15:59:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:59:29 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:29 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 15:59:29 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 15:59:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 15:59:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:29 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 15:59:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:31 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:31 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:31 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 15:59:31 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:31 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:31 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:31 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 15:59:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 15:59:31 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 15:59:31 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 15:59:31 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 15:59:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 15:59:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 15:59:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 15:59:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 15:59:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 15:59:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 15:59:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:02:30 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:02:30 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:30 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:30 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:30 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:30 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:30 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:30 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:30 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:30 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:02:30 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:02:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:02:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:02:30 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:02:30 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:02:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:02:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:02:30 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:30 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:30 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:02:30 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:02:35 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:02:35 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:35 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:35 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:35 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:35 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:35 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:35 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:35 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:02:35 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:02:35 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:02:35 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:02:35 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:02:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:02:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:02:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:02:35 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:35 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:35 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:02:35 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:02:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:02:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:42 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:42 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:42 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:02:42 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:42 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:42 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:42 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:02:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:02:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:02:42 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:02:42 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:02:42 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:02:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:02:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:02:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:02:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:02:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:02:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:02:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:02 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:03:02 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:02 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:02 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:02 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:02 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:02 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:02 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:02 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:02 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:03:02 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:03:02 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:03:02 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:03:02 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:02 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:03:02 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:03:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:03:02 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:02 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:02 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:02 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:04 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:04 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:03:05 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:05 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:05 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:05 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:05 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:05 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:05 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:05 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:05 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:03:05 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:03:05 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:03:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:03:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:03:05 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:03:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:03:05 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:03:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:10 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:10 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:10 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:10 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:10 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:10 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:10 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:10 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:03:10 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:03:10 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:03:10 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:03:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:03:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:03:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:03:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:12 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:03:12 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:12 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:12 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:12 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:12 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:12 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:12 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:12 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:12 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:03:12 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:03:12 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:03:12 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:03:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:03:12 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:03:12 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:03:12 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:46 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:03:46 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:46 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:46 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:46 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:03:46 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:46 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:46 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:46 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:03:46 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:03:46 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:03:46 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:03:46 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:03:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:03:46 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:03:46 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:03:46 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:46 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:03:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:03:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:03:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:04:25 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:04:25 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:04:25 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:04:25 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:04:25 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:04:25 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:04:25 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:04:25 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:04:25 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:04:25 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:04:25 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:04:25 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:04:25 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:04:25 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:04:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:04:25 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:04:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:04:25 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:25 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:25 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:04:25 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:04:26 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:04:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:04:26 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:04:26 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:04:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:04:26 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:04:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:04:26 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:04:26 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:04:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:04:26 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:04:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:04:26 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:04:26 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:04:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:04:26 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:04:26 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:04:26 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:04:26 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:49 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:05:49 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:05:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:05:49 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:49 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:05:49 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:05:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:05:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:49 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:05:49 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:05:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:05:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:49 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:05:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:05:54 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:05:54 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:05:54 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:05:54 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:05:54 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:05:54 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:05:54 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:05:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:05:54 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:54 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:05:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:05:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:05:54 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:05:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:05:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:55 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:55 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:05:55 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:05:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:05:55 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:55 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:55 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:05:55 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:05:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:05:55 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:55 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:55 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:05:55 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:05:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:05:55 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:55 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:56 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:05:56 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:05:56 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:05:56 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:05:56 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:05:56 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:05:56 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:05:56 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:05:56 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:05:56 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:56 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:05:56 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:56 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:05:56 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:05:56 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:05:56 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:05:56 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:05:56 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:58 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:05:58 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:05:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:05:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:58 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:05:58 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:05:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:05:58 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:05:58 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:05:58 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:05:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:05:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:05:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:05:58 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:05:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:20 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:20 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:20 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:06:20 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:06:20 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:06:20 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:20 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:20 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:06:20 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:06:20 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:06:20 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:20 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:20 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:06:20 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:06:20 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:06:20 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:20 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:20 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:20 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:06:21 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:06:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:06:21 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:06:21 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:06:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:06:21 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:21 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:06:21 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:06:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:06:21 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:21 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:23 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:23 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:06:23 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:06:23 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:06:23 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:23 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:23 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:06:23 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:06:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:06:23 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:23 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:06:23 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:06:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:06:23 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:23 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:47 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:47 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:06:47 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:06:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:06:47 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:47 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:06:47 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:06:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:06:47 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:47 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:06:47 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:06:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:06:47 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:47 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:06:50 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:06:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:06:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:06:50 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:06:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:06:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:06:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:06:50 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:06:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:06:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:06:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:06:50 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:06:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:07:52 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:07:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:07:52 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:07:52 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:07:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:07:52 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:07:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:07:52 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:07:52 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:07:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:07:52 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:07:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:07:52 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:07:52 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:07:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:07:52 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:07:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:07:52 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:07:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:07:59 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:00 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:00 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:08:00 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:08:00 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:08:00 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:00 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:08:00 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:08:00 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:08:00 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:00 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:08:00 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:08:00 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:08:00 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:00 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:00 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:00 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:08 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:08 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:08 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:08:08 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:08:08 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:08:08 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:08 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:08 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:08:08 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:08:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:08:08 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:08 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:08:08 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:08:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:08:08 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:08 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:08 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:08 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:12 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:12 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:08:12 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:08:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:08:12 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:12 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:08:12 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:08:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:08:12 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:12 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:08:12 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:08:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:08:12 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:12 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:12 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:12 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:08:19 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:08:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:08:19 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:08:19 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:08:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:08:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:08:19 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:08:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:08:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:19 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:21 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:21 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:08:21 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:08:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:08:21 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:08:21 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:08:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:08:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:21 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:08:21 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:08:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:08:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:21 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:08:31 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:08:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:08:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:08:31 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:08:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:08:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:08:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:08:31 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:08:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:08:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:08:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:08:31 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:08:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:02 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:02 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:09:02 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:09:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:09:02 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:02 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:09:02 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:09:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:09:02 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:02 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:02 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:09:02 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:09:02 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:09:02 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:02 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:02 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:02 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:05 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:09:05 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:05 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:05 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:05 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:05 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:05 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:05 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:05 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:05 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:09:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:09:05 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:05 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:09:05 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:09:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:09:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:09:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:05 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:09:06 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:09:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:09:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:09:06 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:09:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:09:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:09:06 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:09:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:09:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:06 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:14 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:14 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:14 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:14 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:14 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:09:15 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:15 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:15 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:15 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:15 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:15 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:15 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:15 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:15 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:15 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:09:15 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:09:15 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:09:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:15 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:09:15 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:09:15 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:09:15 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:15 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:15 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:15 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:09:17 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:17 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:17 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:17 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:09:17 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:17 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:17 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:17 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:09:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:17 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:09:17 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:09:17 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:09:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:09:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:09:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:09:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:56 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:56 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:09:56 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:09:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:09:56 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:56 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:56 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:09:56 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:09:56 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:09:56 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:56 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:56 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:09:56 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:09:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:09:56 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:56 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:56 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:56 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:58 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:58 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:58 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:09:58 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:58 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:09:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:09:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:58 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:58 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:09:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:09:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:09:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:09:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:09:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:10:02 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:10:02 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:10:02 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:10:02 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:10:02 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:10:02 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:10:02 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:10:02 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:10:02 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:10:02 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:10:02 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:10:02 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:10:02 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:10:02 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:10:02 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:10:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:10:02 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:10:02 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:10:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:10:04 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:10:04 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:10:04 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:10:04 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:10:04 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:10:04 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:10:04 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:10:04 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:10:04 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:10:04 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:10:04 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:10:04 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:10:04 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:10:04 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:10:04 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:10:04 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:10:04 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:10:04 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:10:04 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:33 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:33 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:11:33 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:11:33 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:11:33 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:33 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:11:33 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:11:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:11:33 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:33 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:11:33 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:11:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:11:33 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:33 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:11:42 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:11:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:11:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:11:42 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:11:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:11:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:11:42 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:11:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:11:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:42 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:45 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:11:45 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:11:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:11:45 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:45 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:11:45 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:11:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:11:45 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:45 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:11:45 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:11:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:11:45 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:45 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:11:50 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:11:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:11:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:11:50 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:11:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:11:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:11:50 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:11:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:11:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:50 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:52 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:52 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:11:52 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:11:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:11:52 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:52 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:11:52 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:11:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:11:52 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:11:52 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:11:52 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:11:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:11:52 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:11:52 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:11:52 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:11:52 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:00 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:00 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:00 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:00 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:00 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:00 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:00 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:00 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:00 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:00 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:00 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:12:00 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:12:00 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:12:01 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:01 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:01 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:01 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:01 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:01 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:01 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:01 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:01 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:01 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:01 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:12:01 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:12:01 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:12:01 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:01 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:01 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:01 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:01 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:01 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:01 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:01 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:01 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:01 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:01 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:12:01 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:12:01 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:12:01 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:01 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:01 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:01 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:01 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:01 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:08 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:08 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:08 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:12:08 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:12:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:12:08 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:08 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:12:08 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:12:08 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:12:08 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:08 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:08 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:12:08 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:12:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:12:08 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:08 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:27 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:27 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:12:27 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:12:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:12:27 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:27 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:12:27 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:12:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:12:27 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:27 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:12:27 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:12:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:12:27 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:27 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:28 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:28 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:12:29 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:12:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:12:29 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:12:29 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:12:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:12:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:12:29 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:12:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:12:29 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:29 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:12:30 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:12:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:12:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:12:30 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:12:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:12:30 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:12:30 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:12:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:12:30 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:30 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:12:30 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:12:30 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:12:30 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:12:30 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:12:30 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:12:30 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:12:30 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:12:30 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:12:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:30 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:12:30 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:12:30 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:12:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:12:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:12:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:12:30 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:12:31 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:12:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:12:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:12:31 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:12:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:12:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:12:31 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:12:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:12:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:31 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:33 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-03 16:12:33 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:12:33 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:12:33 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:12:33 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present -2025-11-03 16:12:33 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:12:33 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:12:33 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:12:33 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] -2025-11-03 16:12:33 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 -2025-11-03 16:12:33 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 -2025-11-03 16:12:33 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:12:33 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-03 16:12:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:12:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-03 16:12:33 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:33 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:33 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:33 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:12:34 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:12:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:12:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:12:34 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:12:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:12:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:12:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:12:34 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:12:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:12:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:12:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:12:34 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:12:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:13:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:13:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:13:51 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:13:51 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:13:51 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:13:51 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:13:51 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:13:51 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:13:51 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:13:51 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:13:51 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:13:51 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:13:51 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:13:51 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:13:51 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:13:51 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:51 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:51 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:13:51 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:13:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:13:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:13:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:54 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-03 16:13:54 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-03 16:13:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-03 16:13:55 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:55 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:55 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:55 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:55 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:13:55 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:13:55 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:55 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:55 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-03 16:13:55 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-03 16:13:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-03 16:13:55 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:55 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:55 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:55 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:55 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:13:55 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-03 16:13:55 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:55 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:55 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-03 16:13:55 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-03 16:13:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-03 16:13:55 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:55 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-03 16:13:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-03 16:13:55 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-03 16:13:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 11:56:48 [Thread-55] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:48 [Thread-55] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:56:48 [Thread-55] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:56:49 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:56:49 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:56:49 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:56:49 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:56:49 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 18 ms. Found 6 JPA repository interfaces. +2025-11-05 11:56:49 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:56:49 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:56:49 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:56:49 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:56:49 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:56:49 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 186 ms +2025-11-05 11:56:49 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:56:49 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:56:49 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:56:49 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:56:49 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:56:49 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:49 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:56:49 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@ef7b567, org.springframework.security.web.context.SecurityContextPersistenceFilter@40d5e91, org.springframework.security.web.header.HeaderWriterFilter@77455b4b, org.springframework.web.filter.CorsFilter@10cb87d6, org.springframework.security.web.authentication.logout.LogoutFilter@5468302, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1318/0x00000007c0b8d828@5fba1734, com.qf.myafterprojecy.config.JwtAuthenticationFilter@1946bb07, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@9d13065, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@5413bd17, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@15a21e8a, org.springframework.security.web.session.SessionManagementFilter@e7e341, org.springframework.security.web.access.ExceptionTranslationFilter@562b6f4a, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@3f0c819b] +2025-11-05 11:56:49 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:56:49 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:56:49 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:56:49 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.491 seconds (JVM running for 5282.04) +2025-11-05 11:56:49 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:56:51 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:56:52 [Thread-59] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:56:52 [Thread-59] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 11:56:52 [Thread-59] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 11:56:52 [Thread-59] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:52 [Thread-59] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:56:52 [Thread-59] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:56:52 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:56:52 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:56:52 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:56:52 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:56:52 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 11:56:52 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:56:52 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:56:52 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:56:52 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:56:52 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:56:52 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 192 ms +2025-11-05 11:56:52 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:56:52 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:56:52 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:56:52 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:56:52 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:56:52 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:56:52 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:56:52 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@a9f687e, org.springframework.security.web.context.SecurityContextPersistenceFilter@5c2bbf30, org.springframework.security.web.header.HeaderWriterFilter@31613ca8, org.springframework.web.filter.CorsFilter@68bf3575, org.springframework.security.web.authentication.logout.LogoutFilter@495a869, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1321/0x00000007c0bd9028@6cd6627e, com.qf.myafterprojecy.config.JwtAuthenticationFilter@4c09d331, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@2aa22543, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@129ec8c3, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@2150058, org.springframework.security.web.session.SessionManagementFilter@6a4fb01e, org.springframework.security.web.access.ExceptionTranslationFilter@f0f2e18, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@665c67c3] +2025-11-05 11:56:52 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:56:52 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:56:52 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:56:52 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.47 seconds (JVM running for 5285.244) +2025-11-05 11:56:52 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:57:09 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:57:09 [Thread-63] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:57:09 [Thread-63] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 11:57:09 [Thread-63] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:57:09 [Thread-63] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:57:09 [Thread-63] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:57:09 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:57:09 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:57:09 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:57:10 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:57:10 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 17 ms. Found 6 JPA repository interfaces. +2025-11-05 11:57:10 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:57:10 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:57:10 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:57:10 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:57:10 [restartedMain] INFO o.a.c.c.C.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:57:10 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 177 ms +2025-11-05 11:57:10 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:57:10 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:57:10 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:57:10 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:57:10 [restartedMain] ERROR o.s.o.j.LocalContainerEntityManagerFactoryBean - Failed to initialize JPA EntityManagerFactory: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister +2025-11-05 11:57:10 [restartedMain] ERROR o.s.b.w.e.tomcat.TomcatStarter - Error starting Tomcat context. Exception: org.springframework.beans.factory.UnsatisfiedDependencyException. Message: Error creating bean with name 'jwtAuthenticationFilter': Unsatisfied dependency expressed through field 'userDetailsService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'customUserDetailsService': Unsatisfied dependency expressed through field 'usersRepository'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'usersRepository' defined in com.qf.myafterprojecy.repository.UsersRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot create inner bean '(inner bean)#6592ef68' of type [org.springframework.orm.jpa.SharedEntityManagerCreator] while setting bean property 'entityManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#6592ef68': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister +2025-11-05 11:57:10 [restartedMain] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:57:10 [restartedMain] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 11:57:10 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat +2025-11-05 11:57:10 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:57:10 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:57:10 [restartedMain] INFO o.s.b.a.l.ConditionEvaluationReportLoggingListener - + +Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. +2025-11-05 11:57:10 [restartedMain] ERROR o.s.boot.SpringApplication - Application run failed +org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:163) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:577) ~[spring-context-5.3.23.jar:5.3.23] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) [spring-boot-2.6.13.jar:2.6.13] + at com.qf.myafterprojecy.MyAfterProjecyApplication.main(MyAfterProjecyApplication.java:20) [classes/:na] + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_461] + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_461] + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_461] + at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_461] + at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.6.13.jar:2.6.13] +Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:142) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.(TomcatWebServer.java:104) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:479) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:211) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:182) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:160) ~[spring-boot-2.6.13.jar:2.6.13] + ... 13 common frames omitted +Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'jwtAuthenticationFilter': Unsatisfied dependency expressed through field 'userDetailsService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'customUserDetailsService': Unsatisfied dependency expressed through field 'usersRepository'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'usersRepository' defined in com.qf.myafterprojecy.repository.UsersRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot create inner bean '(inner bean)#6592ef68' of type [org.springframework.orm.jpa.SharedEntityManagerCreator] while setting bean property 'entityManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#6592ef68': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:659) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:639) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:213) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:212) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:175) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:170) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAdaptableBeans(ServletContextInitializerBeans.java:155) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.(ServletContextInitializerBeans.java:87) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getServletContextInitializerBeans(ServletWebServerApplicationContext.java:260) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.selfInitialize(ServletWebServerApplicationContext.java:234) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.web.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:53) ~[spring-boot-2.6.13.jar:2.6.13] + at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5220) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_461] + at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134) ~[na:1.8.0_461] + at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:835) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_461] + at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134) ~[na:1.8.0_461] + at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:265) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardService.startInternal(StandardService.java:432) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.startup.Tomcat.start(Tomcat.java:486) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:123) ~[spring-boot-2.6.13.jar:2.6.13] + ... 18 common frames omitted +Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'customUserDetailsService': Unsatisfied dependency expressed through field 'usersRepository'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'usersRepository' defined in com.qf.myafterprojecy.repository.UsersRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot create inner bean '(inner bean)#6592ef68' of type [org.springframework.orm.jpa.SharedEntityManagerCreator] while setting bean property 'entityManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#6592ef68': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:659) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:639) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:656) ~[spring-beans-5.3.23.jar:5.3.23] + ... 60 common frames omitted +Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'usersRepository' defined in com.qf.myafterprojecy.repository.UsersRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot create inner bean '(inner bean)#6592ef68' of type [org.springframework.orm.jpa.SharedEntityManagerCreator] while setting bean property 'entityManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#6592ef68': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:389) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:134) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1707) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1452) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:656) ~[spring-beans-5.3.23.jar:5.3.23] + ... 74 common frames omitted +Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#6592ef68': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:342) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:113) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:693) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:510) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:374) ~[spring-beans-5.3.23.jar:5.3.23] + ... 87 common frames omitted +Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:330) ~[spring-beans-5.3.23.jar:5.3.23] + ... 95 common frames omitted +Caused by: javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:421) ~[spring-orm-5.3.23.jar:5.3.23] + at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-5.3.23.jar:5.3.23] + at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.23.jar:5.3.23] + ... 102 common frames omitted +Caused by: org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister + at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:123) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:77) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.metamodel.internal.MetamodelImpl.initialize(MetamodelImpl.java:182) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.internal.SessionFactoryImpl.(SessionFactoryImpl.java:319) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1498) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58) ~[spring-orm-5.3.23.jar:5.3.23] + at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.3.23.jar:5.3.23] + at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-5.3.23.jar:5.3.23] + ... 106 common frames omitted +Caused by: org.hibernate.InstantiationException: could not instantiate test object : com.qf.myafterprojecy.pojo.Message + at org.hibernate.engine.internal.UnsavedValueFactory.instantiate(UnsavedValueFactory.java:43) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.engine.internal.UnsavedValueFactory.getUnsavedIdentifierValue(UnsavedValueFactory.java:68) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.tuple.PropertyFactory.buildIdentifierAttribute(PropertyFactory.java:65) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.tuple.entity.EntityMetamodel.(EntityMetamodel.java:142) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.persister.entity.AbstractEntityPersister.(AbstractEntityPersister.java:613) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at org.hibernate.persister.entity.SingleTableEntityPersister.(SingleTableEntityPersister.java:126) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + at sun.reflect.GeneratedConstructorAccessor93.newInstance(Unknown Source) ~[na:na] + at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_461] + at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_461] + at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:96) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + ... 114 common frames omitted +Caused by: java.lang.reflect.InvocationTargetException: null + at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_461] + at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_461] + at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_461] + at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_461] + at org.hibernate.engine.internal.UnsavedValueFactory.instantiate(UnsavedValueFactory.java:40) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final] + ... 123 common frames omitted +Caused by: java.lang.Error: Unresolved compilation problem: + Syntax error on token "pu", invalid Modifiers + + at com.qf.myafterprojecy.pojo.Message.(Message.java:42) ~[classes/:na] + ... 128 common frames omitted +2025-11-05 11:57:15 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:57:15 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:57:15 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:57:15 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:57:15 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 11:57:15 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:57:15 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:57:15 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:57:15 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:57:15 [restartedMain] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:57:15 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 182 ms +2025-11-05 11:57:15 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:57:15 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:57:15 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:57:15 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:57:16 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:57:16 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:57:16 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:57:16 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@4f32221c, org.springframework.security.web.context.SecurityContextPersistenceFilter@1b220117, org.springframework.security.web.header.HeaderWriterFilter@642b51dc, org.springframework.web.filter.CorsFilter@6a9a0cae, org.springframework.security.web.authentication.logout.LogoutFilter@20a612b2, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1324/0x00000007c0bfcc28@33b14cea, com.qf.myafterprojecy.config.JwtAuthenticationFilter@1508b6fa, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@27989a77, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@19839ae9, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@3fc5cb20, org.springframework.security.web.session.SessionManagementFilter@446edb0e, org.springframework.security.web.access.ExceptionTranslationFilter@e765e0a, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@f223066] +2025-11-05 11:57:16 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:57:16 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:57:16 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:57:16 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.476 seconds (JVM running for 5308.747) +2025-11-05 11:57:16 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:57:17 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 11:57:17 [Thread-67] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 11:57:17 [Thread-67] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 11:57:17 [Thread-67] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 11:57:17 [Thread-67] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:57:17 [Thread-67] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 11:57:17 [Thread-67] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 11:57:18 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 11:57:18 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 11:57:18 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 11:57:18 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 11:57:18 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 11:57:18 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 11:57:18 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 11:57:18 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 11:57:18 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 11:57:18 [restartedMain] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 11:57:18 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 190 ms +2025-11-05 11:57:18 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 11:57:18 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 11:57:18 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 11:57:18 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 11:57:18 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 11:57:18 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 11:57:18 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 11:57:18 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@3d47f85b, org.springframework.security.web.context.SecurityContextPersistenceFilter@1ec583dd, org.springframework.security.web.header.HeaderWriterFilter@2ff68758, org.springframework.web.filter.CorsFilter@49cfbbbf, org.springframework.security.web.authentication.logout.LogoutFilter@2b30f6b5, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1327/0x00000007c0c39c28@2d48b9, com.qf.myafterprojecy.config.JwtAuthenticationFilter@f273b2d, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@171e870c, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@cc90ef0, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@7e058eea, org.springframework.security.web.session.SessionManagementFilter@5879bf8e, org.springframework.security.web.access.ExceptionTranslationFilter@4878254c, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@559834ce] +2025-11-05 11:57:18 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 11:57:18 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 11:57:18 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 11:57:18 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.451 seconds (JVM running for 5310.969) +2025-11-05 11:57:18 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 11:58:42 [http-nio-8080-exec-1] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-05 11:58:42 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' +2025-11-05 11:58:42 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 1 ms +2025-11-05 11:58:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:58:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:58:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 11:58:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 11:58:42 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 11:58:42 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 12:00:29 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 12:00:29 [Thread-74] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 12:00:29 [Thread-74] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Destroying Spring FrameworkServlet 'dispatcherServlet' +2025-11-05 12:00:29 [Thread-74] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 12:00:29 [Thread-74] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:29 [Thread-74] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 12:00:29 [Thread-74] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 12:00:29 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 12:00:29 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 12:00:29 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 12:00:30 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 12:00:30 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 27 ms. Found 6 JPA repository interfaces. +2025-11-05 12:00:30 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 12:00:30 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 12:00:30 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 12:00:30 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 12:00:30 [restartedMain] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 12:00:30 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 276 ms +2025-11-05 12:00:30 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 12:00:30 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 12:00:30 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 12:00:30 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 12:00:30 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 12:00:30 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:30 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 12:00:30 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@325f2ac9, org.springframework.security.web.context.SecurityContextPersistenceFilter@71200805, org.springframework.security.web.header.HeaderWriterFilter@2de9062c, org.springframework.web.filter.CorsFilter@6b25d0a8, org.springframework.security.web.authentication.logout.LogoutFilter@602bb0e, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1333/0x00000007c0c55828@1b35b3c7, com.qf.myafterprojecy.config.JwtAuthenticationFilter@223659b2, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@59130c1, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@60ac9e39, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@442abdad, org.springframework.security.web.session.SessionManagementFilter@3b558fba, org.springframework.security.web.access.ExceptionTranslationFilter@3b19eb93, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@7577fe0b] +2025-11-05 12:00:30 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 12:00:30 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 12:00:30 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 12:00:30 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.581 seconds (JVM running for 5503.007) +2025-11-05 12:00:30 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 12:00:31 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 12:00:32 [Thread-78] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 12:00:32 [Thread-78] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 12:00:32 [Thread-78] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 12:00:32 [Thread-78] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:32 [Thread-78] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 12:00:32 [Thread-78] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 12:00:32 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 12:00:32 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 12:00:32 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 12:00:32 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 12:00:32 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 18 ms. Found 6 JPA repository interfaces. +2025-11-05 12:00:32 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 12:00:32 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 12:00:32 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 12:00:32 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 12:00:32 [restartedMain] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 12:00:32 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 173 ms +2025-11-05 12:00:32 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 12:00:32 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 12:00:32 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 12:00:32 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 12:00:32 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 12:00:32 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:32 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 12:00:32 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@53cd4db7, org.springframework.security.web.context.SecurityContextPersistenceFilter@3686adda, org.springframework.security.web.header.HeaderWriterFilter@5efd216b, org.springframework.web.filter.CorsFilter@85978de, org.springframework.security.web.authentication.logout.LogoutFilter@3c85eb4b, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1336/0x00000007c0c68828@6419ffab, com.qf.myafterprojecy.config.JwtAuthenticationFilter@616da268, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@5d44d789, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@6a855333, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@1eacc516, org.springframework.security.web.session.SessionManagementFilter@5fb141fb, org.springframework.security.web.access.ExceptionTranslationFilter@70836556, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@6e7f1eb0] +2025-11-05 12:00:32 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 12:00:32 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 12:00:32 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 12:00:32 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.434 seconds (JVM running for 5505.135) +2025-11-05 12:00:32 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 12:00:36 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 12:00:36 [Thread-82] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 12:00:36 [Thread-82] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 12:00:36 [Thread-82] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 12:00:36 [Thread-82] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:36 [Thread-82] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 12:00:36 [Thread-82] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 12:00:36 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 12:00:36 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 12:00:36 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 12:00:36 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 12:00:36 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 12:00:36 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 12:00:36 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 12:00:36 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 12:00:36 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 12:00:36 [restartedMain] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 12:00:36 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 189 ms +2025-11-05 12:00:36 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 12:00:36 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 12:00:36 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 12:00:36 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 12:00:36 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 12:00:36 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:36 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 12:00:36 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@36625557, org.springframework.security.web.context.SecurityContextPersistenceFilter@46dc5266, org.springframework.security.web.header.HeaderWriterFilter@6e1ac073, org.springframework.web.filter.CorsFilter@f7da22a, org.springframework.security.web.authentication.logout.LogoutFilter@7b426bab, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1339/0x00000007c0c7b828@6d076d90, com.qf.myafterprojecy.config.JwtAuthenticationFilter@777d6cb, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@68251e7, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@3e23001c, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@63ad8c41, org.springframework.security.web.session.SessionManagementFilter@74a2a923, org.springframework.security.web.access.ExceptionTranslationFilter@67f4fd5f, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@51bdc924] +2025-11-05 12:00:36 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 12:00:36 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 12:00:36 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 12:00:36 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.465 seconds (JVM running for 5509.418) +2025-11-05 12:00:36 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 12:00:38 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 12:00:38 [Thread-86] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 12:00:38 [Thread-86] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 12:00:38 [Thread-86] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 12:00:38 [Thread-86] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:38 [Thread-86] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 12:00:38 [Thread-86] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 12:00:38 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 12:00:38 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 12:00:38 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 12:00:38 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 12:00:38 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 12:00:38 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 12:00:38 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 12:00:38 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 12:00:38 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 12:00:38 [restartedMain] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 12:00:38 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 187 ms +2025-11-05 12:00:38 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 12:00:38 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 12:00:38 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 12:00:38 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 12:00:38 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 12:00:38 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:38 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 12:00:39 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@29cf67a6, org.springframework.security.web.context.SecurityContextPersistenceFilter@5fe8e92c, org.springframework.security.web.header.HeaderWriterFilter@292dacf2, org.springframework.web.filter.CorsFilter@41401223, org.springframework.security.web.authentication.logout.LogoutFilter@46db2914, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1342/0x00000007c0c8e828@2126bd09, com.qf.myafterprojecy.config.JwtAuthenticationFilter@5542475b, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@3396a3e4, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@7718c358, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@5d9d6558, org.springframework.security.web.session.SessionManagementFilter@21f11452, org.springframework.security.web.access.ExceptionTranslationFilter@2389f376, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@668dcfeb] +2025-11-05 12:00:39 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 12:00:39 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 12:00:39 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 12:00:39 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.55 seconds (JVM running for 5511.709) +2025-11-05 12:00:39 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 12:00:40 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 12:00:40 [Thread-90] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 12:00:40 [Thread-90] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 12:00:40 [Thread-90] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 12:00:40 [Thread-90] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:40 [Thread-90] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 12:00:40 [Thread-90] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 12:00:40 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 12:00:40 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 12:00:40 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 12:00:41 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 12:00:41 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 12:00:41 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 12:00:41 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 12:00:41 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 12:00:41 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 12:00:41 [restartedMain] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 12:00:41 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 185 ms +2025-11-05 12:00:41 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 12:00:41 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 12:00:41 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 12:00:41 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 12:00:41 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 12:00:41 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:41 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 12:00:41 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@3e2acb8e, org.springframework.security.web.context.SecurityContextPersistenceFilter@6c3eab89, org.springframework.security.web.header.HeaderWriterFilter@3ee70daf, org.springframework.web.filter.CorsFilter@36680794, org.springframework.security.web.authentication.logout.LogoutFilter@f5bd352, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1345/0x00000007c0ca1828@26bc589, com.qf.myafterprojecy.config.JwtAuthenticationFilter@bdb5c9, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@6449e653, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@62c50500, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@7ba30969, org.springframework.security.web.session.SessionManagementFilter@6152b86c, org.springframework.security.web.access.ExceptionTranslationFilter@d80afe2, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@63504284] +2025-11-05 12:00:41 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 12:00:41 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 12:00:41 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 12:00:41 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.452 seconds (JVM running for 5513.874) +2025-11-05 12:00:41 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 12:00:46 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 12:00:46 [Thread-94] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 12:00:46 [Thread-94] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 12:00:46 [Thread-94] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:46 [Thread-94] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 12:00:46 [Thread-94] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 12:00:46 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 12:00:46 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 12:00:46 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 12:00:46 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 12:00:46 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 21 ms. Found 6 JPA repository interfaces. +2025-11-05 12:00:46 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 12:00:46 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 12:00:46 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 12:00:46 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 12:00:46 [restartedMain] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 12:00:46 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 182 ms +2025-11-05 12:00:46 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 12:00:46 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 12:00:46 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 12:00:46 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 12:00:46 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 12:00:46 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 12:00:46 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 12:00:47 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@61cfac96, org.springframework.security.web.context.SecurityContextPersistenceFilter@298443f7, org.springframework.security.web.header.HeaderWriterFilter@13d78637, org.springframework.web.filter.CorsFilter@251d01dc, org.springframework.security.web.authentication.logout.LogoutFilter@216b3da0, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1348/0x00000007c0cb4828@17bc2ee7, com.qf.myafterprojecy.config.JwtAuthenticationFilter@94adf7a, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@4f075448, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@37216c8b, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@aa4acba, org.springframework.security.web.session.SessionManagementFilter@f5305fc, org.springframework.security.web.access.ExceptionTranslationFilter@bfa49f2, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@7cee0858] +2025-11-05 12:00:47 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 12:00:47 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 12:00:47 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 12:00:47 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.454 seconds (JVM running for 5519.582) +2025-11-05 12:00:47 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 13:25:53 [http-nio-8080-exec-1] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-05 13:25:53 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' +2025-11-05 13:25:53 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 0 ms +2025-11-05 13:25:53 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:25:53 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 13:25:53 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 13:25:53 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 13:25:53 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:25:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:25:53 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 13:25:53 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 13:25:53 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 13:25:53 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:25:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:25:53 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 13:25:53 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 13:25:53 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 13:25:53 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:25:53 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:25:53 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 13:25:53 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 13:25:53 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 13:25:53 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:25:53 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:25:53 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:25:53 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:26:00 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 13:26:00 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 13:26:00 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 13:26:00 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 13:26:00 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 13:26:00 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 13:26:00 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 13:26:00 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 13:26:00 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 13:26:00 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:26:00 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:26:00 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 13:26:00 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 13:26:00 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 13:26:00 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 13:26:00 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 13:26:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 13:26:00 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:26:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:26:02 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:02 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:02 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:02 [http-nio-8080-exec-3] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 13:26:02 [http-nio-8080-exec-3] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 13:26:09 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:09 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:26:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:26:09 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 13:26:09 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 13:27:21 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:27:21 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 13:27:21 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 13:27:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 13:27:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:27:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:27:21 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 13:27:21 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 13:27:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 13:27:21 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:27:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:27:21 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 13:27:21 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 13:27:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 13:27:21 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:27:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:27:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 13:27:21 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 13:27:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 13:27:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:21 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:27:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:27:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:27:59 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 13:27:59 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 13:27:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 13:27:59 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:27:59 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:27:59 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 13:27:59 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 13:27:59 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 13:27:59 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:27:59 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:27:59 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 13:27:59 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 13:27:59 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 13:27:59 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:27:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:27:59 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 13:27:59 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 13:27:59 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 13:27:59 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:27:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:27:59 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:27:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:31:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:31:43 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 13:31:43 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 13:31:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 13:31:43 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:31:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:31:43 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 13:31:43 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 13:31:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 13:31:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:31:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:31:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 13:31:43 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 13:31:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 13:31:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:31:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:31:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 13:31:43 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 13:31:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 13:31:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:31:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:31:43 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:31:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:33:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:33:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 13:33:50 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 13:33:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 13:33:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:33:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:33:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 13:33:50 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 13:33:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 13:33:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:33:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:33:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 13:33:50 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 13:33:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 13:33:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:33:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:33:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 13:33:50 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 13:33:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 13:33:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:33:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:33:50 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:33:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:38:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:38:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 13:38:06 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 13:38:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 13:38:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:38:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:38:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 13:38:06 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 13:38:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 13:38:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:38:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:38:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 13:38:06 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 13:38:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 13:38:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:38:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:38:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 13:38:06 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 13:38:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 13:38:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:38:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:38:06 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:38:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:44:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:44:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:44:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:44:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:44:05 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 13:44:05 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 13:45:55 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:45:55 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 13:45:55 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 13:45:55 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 13:45:55 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:45:55 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:45:55 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 13:45:55 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 13:45:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 13:45:55 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:45:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:45:55 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 13:45:55 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 13:45:55 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 13:45:55 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:45:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 13:45:55 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 13:45:55 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 13:45:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 13:45:55 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 13:45:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 13:45:55 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 13:45:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:06:05 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 14:06:05 [Thread-98] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 14:06:05 [Thread-98] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Destroying Spring FrameworkServlet 'dispatcherServlet' +2025-11-05 14:06:05 [Thread-98] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 14:06:05 [Thread-98] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 14:06:05 [Thread-98] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 14:06:05 [Thread-98] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 14:06:05 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 14:06:05 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 14:06:05 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 14:06:06 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 14:06:06 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 23 ms. Found 6 JPA repository interfaces. +2025-11-05 14:06:06 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 14:06:06 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 14:06:06 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 14:06:06 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 14:06:06 [restartedMain] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 14:06:06 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 206 ms +2025-11-05 14:06:06 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 14:06:06 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 14:06:06 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 14:06:06 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 14:06:06 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 14:06:06 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 14:06:06 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 14:06:06 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@84e3a2, org.springframework.security.web.context.SecurityContextPersistenceFilter@3af14951, org.springframework.security.web.header.HeaderWriterFilter@67f74487, org.springframework.web.filter.CorsFilter@24ab9a09, org.springframework.security.web.authentication.logout.LogoutFilter@474896a8, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1355/0x00000007c0bf9c28@612dd5d3, com.qf.myafterprojecy.config.JwtAuthenticationFilter@43886edd, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@364a3830, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@6bc49102, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@311747e7, org.springframework.security.web.session.SessionManagementFilter@30758ddf, org.springframework.security.web.access.ExceptionTranslationFilter@2de8df2a, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@36cd87ce] +2025-11-05 14:06:06 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 14:06:06 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 14:06:06 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 14:06:06 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.559 seconds (JVM running for 13038.967) +2025-11-05 14:06:06 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 14:17:38 [http-nio-8080-exec-1] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-05 14:17:38 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' +2025-11-05 14:17:38 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 1 ms +2025-11-05 14:17:38 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:38 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:38 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:38 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:38 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:17:39 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:17:39 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:17:39 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:17:39 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:17:39 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:17:39 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:17:39 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:17:39 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:17:39 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:17:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:17:39 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:17:39 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:17:39 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:17:39 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:17:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:17:39 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:17:39 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:17:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:17:39 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:39 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:17:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:17:56 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:56 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:17:57 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:17:57 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:17:57 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:17:57 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:17:57 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:17:57 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:17:57 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:17:57 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:17:57 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:17:57 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:17:57 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:17:57 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:17:57 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:17:57 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:17:57 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:17:57 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:17:57 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:17:57 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:17:57 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:17:57 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:17:57 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:17:57 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:18:52 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:18:52 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:18:52 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:18:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:18:52 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:18:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:18:52 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:18:52 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:18:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:18:52 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:18:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:18:52 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:18:52 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:18:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:18:52 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:18:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:18:52 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:18:52 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:18:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:18:52 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:18:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:18:52 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:18:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:28:04 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:04 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:04 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:04 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:04 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:28:05 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:28:05 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:28:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:28:05 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:28:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:28:05 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:28:05 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:28:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:28:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:28:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:28:05 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:28:05 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:28:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:28:05 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:28:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:28:05 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:28:05 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:28:05 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:28:05 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:05 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:28:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:28:52 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:28:52 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:28:52 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:28:52 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:28:52 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:28:52 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:28:52 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:28:52 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:28:52 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:28:52 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:28:52 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:28:52 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:28:52 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:28:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:28:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:28:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:28:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:28:52 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:28:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:28:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:54 [http-nio-8080-exec-6] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:28:54 [http-nio-8080-exec-6] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:28:57 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:57 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:57 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:28:57 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:28:57 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 14:28:57 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 14:34:55 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:34:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:34:55 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:34:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:34:55 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 14:34:55 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 14:35:40 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:35:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:35:40 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:35:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:35:40 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 14:35:40 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 14:38:58 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:38:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:38:58 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:38:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:38:58 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:38:58 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:38:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:38:58 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:38:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:38:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:38:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:38:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:38:58 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:38:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:38:58 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:38:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:38:58 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:38:58 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:38:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:38:58 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:38:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:38:58 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:38:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:39:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:39:21 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:39:21 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:39:21 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:39:21 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:39:21 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:39:21 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:39:21 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:39:21 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:39:21 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:39:21 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:39:21 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:39:21 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:39:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:39:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:39:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:39:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:39:21 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:39:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:39:23 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:23 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:23 [http-nio-8080-exec-5] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:39:23 [http-nio-8080-exec-5] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:39:44 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:39:44 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:39:44 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:39:44 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:39:44 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:39:44 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:39:44 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:39:44 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:39:44 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:39:44 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:39:44 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:39:44 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:39:44 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:39:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:39:44 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:39:44 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:39:44 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:39:44 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:39:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:39:45 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:45 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:39:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:39:45 [http-nio-8080-exec-6] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:39:45 [http-nio-8080-exec-6] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:40:39 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:40:39 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:40:39 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:40:39 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:40:39 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:40:39 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:40:39 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:40:39 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:40:39 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:40:39 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:40:39 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:40:39 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:40:39 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:40:39 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:40:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:40:39 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:40:39 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:40:39 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:40:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:40:40 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-4] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:40:40 [http-nio-8080-exec-4] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:40:40 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:40:40 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:40:40 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:40:40 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:40:40 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:40:40 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:40:40 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:40:40 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:40:40 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:40:40 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:40:40 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:40:40 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:40:40 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:40:40 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:40:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:40:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:40:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:40:40 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:40:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:40:41 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:41 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:40:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:40:41 [http-nio-8080-exec-10] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:40:41 [http-nio-8080-exec-10] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:41:09 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:09 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:41:09 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:41:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:41:09 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:09 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:41:09 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:41:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:41:09 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:09 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:41:09 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:41:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:41:09 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:09 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:41:09 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:41:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:41:09 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:09 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:14 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:14 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:41:14 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:41:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:41:14 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:14 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:14 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:41:14 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:41:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:41:14 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:14 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:14 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:41:14 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:41:14 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:41:14 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:14 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:41:14 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:41:14 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:41:14 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:14 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:14 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:14 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:16 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:16 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:16 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:16 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:16 [http-nio-8080-exec-4] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:41:16 [http-nio-8080-exec-4] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:41:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:41:17 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:41:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:41:17 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:41:17 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:41:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:41:17 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:17 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:41:17 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:41:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:41:17 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:41:17 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:41:17 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:41:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:41:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:41:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:41:17 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:41:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:07 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:42:07 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:07 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:07 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:07 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:07 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:07 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:07 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:07 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:07 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:42:07 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:42:07 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:07 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:42:07 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:42:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:42:07 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:42:07 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:07 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:07 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:07 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:07 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:42:07 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:42:07 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:42:07 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:07 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:07 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:42:07 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:42:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:42:07 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:07 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:07 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:42:07 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:42:07 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:42:07 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:07 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:07 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:42:07 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:42:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:42:07 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:07 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:07 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:07 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:09 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:09 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:09 [http-nio-8080-exec-9] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:42:09 [http-nio-8080-exec-9] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:42:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:42:10 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:42:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:42:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:42:10 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:42:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:42:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:10 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:42:10 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:42:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:42:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:42:10 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:42:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:42:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:10 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:11 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:42:11 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:11 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:11 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:11 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:11 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:11 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:11 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:11 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:11 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:42:11 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:11 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:42:11 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:42:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:42:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:42:11 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:42:11 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:12 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:12 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:42:12 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:42:12 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:42:12 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:12 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:42:12 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:42:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:42:12 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:12 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:12 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:42:12 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:42:12 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:42:12 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:12 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:42:12 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:42:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:42:12 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:12 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:14 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:42:14 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:14 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:14 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:14 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:14 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:14 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:14 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:14 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:14 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:42:14 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:42:14 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:42:14 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:14 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:42:14 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:42:14 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:42:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:14 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:14 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:14 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:14 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:15 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:15 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:15 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:15 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:15 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 14:42:15 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 14:42:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:17 [http-nio-8080-exec-9] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:42:17 [http-nio-8080-exec-9] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:42:18 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:42:18 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:18 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:18 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:18 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:18 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:18 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:18 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:18 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:18 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:42:18 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:42:18 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:18 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:42:18 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:18 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:42:18 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:42:18 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:42:18 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:18 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:18 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:18 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:49 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:42:49 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:49 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:49 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:49 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:42:49 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:49 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:49 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:49 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:42:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:42:49 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:42:49 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:42:49 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:42:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:42:49 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:42:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:42:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:42:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:42:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:42:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:15 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:43:15 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:15 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:15 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:15 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:15 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:15 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:15 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:15 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:15 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:43:15 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:43:15 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:43:15 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:15 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:15 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:43:15 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:15 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:15 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:26 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:43:26 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:26 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:26 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:26 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:26 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:26 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:26 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:26 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:26 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:26 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:43:26 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:43:26 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:43:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:26 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:26 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:26 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:43:26 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:43:29 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:29 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:29 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:29 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:29 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:29 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:29 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:29 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:29 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:43:29 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:43:29 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:43:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:43:29 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:43:31 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:43:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:43:31 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:43:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:43:31 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:43:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:43:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:43:31 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:43:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:43:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:31 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:33 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:43:33 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:33 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:33 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:33 [http-nio-8080-exec-2] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:33 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:33 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:33 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:33 [http-nio-8080-exec-2] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:33 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:43:33 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:33 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:43:33 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:43:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:43:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:33 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:33 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:43:34 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:43:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:34 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:43:34 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:43:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:43:34 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:43:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:43:34 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:43:34 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:43:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:43:34 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:34 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:34 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:34 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:35 [http-nio-8080-exec-4] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:43:35 [http-nio-8080-exec-4] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:43:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:36 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:43:36 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:43:36 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:36 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:36 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:36 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:43:36 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:43:36 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:36 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:36 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:36 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:43:36 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:43:36 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:43:36 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:36 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:36 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:43:36 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:43:36 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:43:36 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:36 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:36 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:36 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:38 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:43:38 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:38 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:38 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:38 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:38 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:38 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:38 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:38 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:38 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:43:38 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:38 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:43:38 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:43:38 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:38 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:38 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:43:38 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:38 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:38 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:38 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:38 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:39 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:39 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:43:39 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:43:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:39 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:39 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:39 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:43:39 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:43:39 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:39 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:39 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:43:39 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:43:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:43:39 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:39 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:39 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:43:39 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:43:39 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:43:39 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:39 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:39 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:39 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:43:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:42 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:42 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:42 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:43:42 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:42 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:42 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:42 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:43:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:43:42 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:43:42 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:43:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:43:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:44 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:44 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:44 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:44 [http-nio-8080-exec-8] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:43:44 [http-nio-8080-exec-8] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:43:46 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 14:43:46 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 14:43:46 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:46 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:43:46 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:43:46 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:43:46 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:46 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:46 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:43:46 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:43:46 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:43:46 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:46 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:46 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:43:46 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:43:46 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:43:46 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:43:46 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:43:46 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:43:46 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:43:46 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:43:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:43:46 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:43:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:44:21 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 14:44:21 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-5] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:44:21 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:44:21 [http-nio-8080-exec-7] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:44:21 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 14:44:21 [http-nio-8080-exec-5] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:44:21 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:44:21 [http-nio-8080-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:44:21 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 14:44:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:44:21 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 14:44:21 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 14:44:21 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 14:44:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:44:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:44:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:44:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 14:44:21 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:44:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:44:21 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:21 [http-nio-8080-exec-4] INFO c.q.m.controller.NonsenseController - 请求获取所有随机内容 +2025-11-05 14:44:21 [http-nio-8080-exec-4] INFO c.q.m.service.NonsenseService - 获取所有随机内容成功,共4条数据 +2025-11-05 14:44:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:24 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-05 14:44:24 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-05 14:44:27 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:44:27 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:44:27 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:44:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:44:27 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:44:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:44:27 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:44:27 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:44:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:44:27 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:44:27 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:44:27 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:44:27 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:44:27 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:44:27 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:44:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:44:27 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:44:27 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:44:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:44:27 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:44:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:44:27 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:44:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:45:56 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:45:56 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 14:45:56 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 14:45:56 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 14:45:56 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:45:56 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:45:56 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 14:45:56 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 14:45:56 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 14:45:56 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:45:56 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:45:56 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 14:45:56 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 14:45:56 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 14:45:56 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:56 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:56 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:45:56 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 14:45:57 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:57 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:57 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:57 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:57 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 14:45:57 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 14:45:57 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 14:45:57 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:57 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:57 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-05 14:45:57 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-05 14:45:57 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 14:45:57 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:51:50 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:51:50Z, a difference of 3655061 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:51:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:51:51 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:51:51Z, a difference of 3656666 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:51:51 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:53:58 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:53:58Z, a difference of 3783807 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:53:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:54:06 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:54:06Z, a difference of 3791075 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:54:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:54:09 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:54:09Z, a difference of 3794415 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:54:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:54:10 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:54:10Z, a difference of 3795156 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:54:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:54:23 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:54:23Z, a difference of 3808199 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:54:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:54:34 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:54:34Z, a difference of 3819611 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:54:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:54:50 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:54:50Z, a difference of 3835689 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:54:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:55:23 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:55:23 [Thread-102] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:55:23 [Thread-102] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Destroying Spring FrameworkServlet 'dispatcherServlet' +2025-11-05 15:55:23 [Thread-102] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:55:23 [Thread-102] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:23 [Thread-102] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:55:23 [Thread-102] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:55:23 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:55:23 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:55:23 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:55:23 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:55:23 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 15:55:23 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:55:23 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:55:23 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:55:23 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:55:23 [restartedMain] INFO o.a.c.c.C.[Tomcat-2].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:55:23 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 178 ms +2025-11-05 15:55:24 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:55:24 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:55:24 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:55:24 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:55:24 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:55:24 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:24 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:55:24 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'categoryAttributeController' defined in file [E:\MyWebProject\MyAfterProjecy\target\classes\com\qf\myafterprojecy\controller\CategoryAttributeController.class]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.qf.myafterprojecy.controller.CategoryAttributeController]: Constructor threw exception; nested exception is java.lang.Error: Unresolved compilation problem: + Syntax error on token "@", delete this token + +2025-11-05 15:55:24 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:24 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:55:24 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:55:24 [restartedMain] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:55:24 [restartedMain] INFO o.s.b.a.l.ConditionEvaluationReportLoggingListener - + +Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. +2025-11-05 15:55:24 [restartedMain] ERROR o.s.boot.SpringApplication - Application run failed +org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'categoryAttributeController' defined in file [E:\MyWebProject\MyAfterProjecy\target\classes\com\qf\myafterprojecy\controller\CategoryAttributeController.class]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.qf.myafterprojecy.controller.CategoryAttributeController]: Constructor threw exception; nested exception is java.lang.Error: Unresolved compilation problem: + Syntax error on token "@", delete this token + + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1334) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1232) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.23.jar:5.3.23] + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.23.jar:5.3.23] + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) ~[spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317) [spring-boot-2.6.13.jar:2.6.13] + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) [spring-boot-2.6.13.jar:2.6.13] + at com.qf.myafterprojecy.MyAfterProjecyApplication.main(MyAfterProjecyApplication.java:20) [classes/:na] + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_461] + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_461] + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_461] + at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_461] + at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.6.13.jar:2.6.13] +Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.qf.myafterprojecy.controller.CategoryAttributeController]: Constructor threw exception; nested exception is java.lang.Error: Unresolved compilation problem: + Syntax error on token "@", delete this token + + at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:224) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:87) ~[spring-beans-5.3.23.jar:5.3.23] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1326) ~[spring-beans-5.3.23.jar:5.3.23] + ... 22 common frames omitted +Caused by: java.lang.Error: Unresolved compilation problem: + Syntax error on token "@", delete this token + + at com.qf.myafterprojecy.controller.CategoryAttributeController.(CategoryAttributeController.java:45) ~[classes/:na] + at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_461] + at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_461] + at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_461] + at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_461] + at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:211) ~[spring-beans-5.3.23.jar:5.3.23] + ... 24 common frames omitted +2025-11-05 15:55:30 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:55:30 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:55:30 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:55:30 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:55:30 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 25 ms. Found 6 JPA repository interfaces. +2025-11-05 15:55:30 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:55:30 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:55:30 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:55:30 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:55:30 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:55:30 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 218 ms +2025-11-05 15:55:30 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:55:30 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:55:30 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:55:30 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:55:31 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:55:31 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:31 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:55:31 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@6829307, org.springframework.security.web.context.SecurityContextPersistenceFilter@1b6d5562, org.springframework.security.web.header.HeaderWriterFilter@49f241f6, org.springframework.web.filter.CorsFilter@28664b51, org.springframework.security.web.authentication.logout.LogoutFilter@525ffcb3, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1362/0x00000007c0cc6c28@7f93bdc2, com.qf.myafterprojecy.config.JwtAuthenticationFilter@42124c24, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@35d5c567, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@6ef3dfda, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@202ac330, org.springframework.security.web.session.SessionManagementFilter@1eaa6f82, org.springframework.security.web.access.ExceptionTranslationFilter@417dfd7d, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@43264cd6] +2025-11-05 15:55:31 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:55:31 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:55:31 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:55:31 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.494 seconds (JVM running for 19603.718) +2025-11-05 15:55:31 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:55:34 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:55:34 [Thread-106] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:55:34 [Thread-106] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:55:34 [Thread-106] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:55:34 [Thread-106] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:34 [Thread-106] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:55:34 [Thread-106] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:55:35 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:55:35 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:55:35 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:55:35 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:55:35 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 18 ms. Found 6 JPA repository interfaces. +2025-11-05 15:55:35 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:55:35 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:55:35 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:55:35 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:55:35 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:55:35 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 174 ms +2025-11-05 15:55:35 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:55:35 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:55:35 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:55:35 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:55:35 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:55:35 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:35 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:55:35 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@74e066f0, org.springframework.security.web.context.SecurityContextPersistenceFilter@73eee1d9, org.springframework.security.web.header.HeaderWriterFilter@39bd1bf2, org.springframework.web.filter.CorsFilter@31ee0e6c, org.springframework.security.web.authentication.logout.LogoutFilter@62b6b2f1, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1365/0x00000007c0cc6428@4eb77d11, com.qf.myafterprojecy.config.JwtAuthenticationFilter@756d9d80, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@6dc193e6, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@3c726727, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@2c96bf14, org.springframework.security.web.session.SessionManagementFilter@4a52050f, org.springframework.security.web.access.ExceptionTranslationFilter@5319a51f, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@1d1e99e6] +2025-11-05 15:55:35 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:55:35 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:55:35 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:55:35 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.419 seconds (JVM running for 19607.956) +2025-11-05 15:55:35 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:55:40 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:55:41 [Thread-113] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:55:41 [Thread-113] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:55:41 [Thread-113] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:41 [Thread-113] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:55:41 [Thread-113] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:55:41 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:55:41 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:55:41 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:55:41 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:55:41 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 22 ms. Found 6 JPA repository interfaces. +2025-11-05 15:55:41 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:55:41 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:55:41 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:55:41 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:55:41 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:55:41 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 206 ms +2025-11-05 15:55:41 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:55:41 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:55:41 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:55:41 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:55:41 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:55:41 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:41 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:55:41 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@5688b33, org.springframework.security.web.context.SecurityContextPersistenceFilter@9d78a83, org.springframework.security.web.header.HeaderWriterFilter@552357ea, org.springframework.web.filter.CorsFilter@73d03690, org.springframework.security.web.authentication.logout.LogoutFilter@236e5272, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1368/0x00000007c0cc5428@3904076, com.qf.myafterprojecy.config.JwtAuthenticationFilter@54a71326, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@51c04a95, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@1e93cb40, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@6bd19bf0, org.springframework.security.web.session.SessionManagementFilter@2e94dae0, org.springframework.security.web.access.ExceptionTranslationFilter@283e1e22, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@4572abde] +2025-11-05 15:55:41 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:55:41 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:55:41 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:55:41 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.518 seconds (JVM running for 19614.343) +2025-11-05 15:55:41 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:55:43 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:55:43 [Thread-117] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:55:43 [Thread-117] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:55:43 [Thread-117] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:55:43 [Thread-117] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:43 [Thread-117] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:55:43 [Thread-117] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:55:43 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:55:43 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:55:43 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:55:44 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:55:44 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 18 ms. Found 6 JPA repository interfaces. +2025-11-05 15:55:44 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:55:44 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:55:44 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:55:44 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:55:44 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:55:44 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 168 ms +2025-11-05 15:55:44 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:55:44 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:55:44 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:55:44 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:55:44 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:55:44 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:44 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:55:44 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@1a973869, org.springframework.security.web.context.SecurityContextPersistenceFilter@5f138021, org.springframework.security.web.header.HeaderWriterFilter@25c65e56, org.springframework.web.filter.CorsFilter@116f137, org.springframework.security.web.authentication.logout.LogoutFilter@71dab059, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1371/0x00000007c0cc4428@4978002e, com.qf.myafterprojecy.config.JwtAuthenticationFilter@59f5af27, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@4d13c5c2, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@5a3016d8, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@5a03eefb, org.springframework.security.web.session.SessionManagementFilter@33375b11, org.springframework.security.web.access.ExceptionTranslationFilter@17b0b45d, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@55a90226] +2025-11-05 15:55:44 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:55:44 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:55:44 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:55:44 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.411 seconds (JVM running for 19616.891) +2025-11-05 15:55:44 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:55:48 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:55:49 [Thread-121] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:55:49 [Thread-121] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:55:49 [Thread-121] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:55:49 [Thread-121] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:49 [Thread-121] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:55:49 [Thread-121] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:55:49 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:55:49 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:55:49 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:55:49 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:55:49 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 18 ms. Found 6 JPA repository interfaces. +2025-11-05 15:55:49 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:55:49 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:55:49 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:55:49 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:55:49 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:55:49 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 174 ms +2025-11-05 15:55:49 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:55:49 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:55:49 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:55:49 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:55:49 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:55:49 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:55:49 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:55:49 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@70a7ced1, org.springframework.security.web.context.SecurityContextPersistenceFilter@628c8dde, org.springframework.security.web.header.HeaderWriterFilter@63008bc1, org.springframework.web.filter.CorsFilter@76d28155, org.springframework.security.web.authentication.logout.LogoutFilter@71748134, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1374/0x00000007c0cc3428@51fa8eeb, com.qf.myafterprojecy.config.JwtAuthenticationFilter@4d1b2161, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@71cee17e, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@16773205, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@5311e389, org.springframework.security.web.session.SessionManagementFilter@7632e698, org.springframework.security.web.access.ExceptionTranslationFilter@4adb2150, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@4475ad49] +2025-11-05 15:55:49 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:55:49 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:55:49 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:55:49 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.424 seconds (JVM running for 19622.108) +2025-11-05 15:55:49 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:09 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:09 [Thread-125] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:09 [Thread-125] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:09 [Thread-125] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:09 [Thread-125] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:09 [Thread-125] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:09 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:09 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:09 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:10 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:10 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 26 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:10 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:10 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:10 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:10 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:10 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:10 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 264 ms +2025-11-05 15:56:10 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:10 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:10 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:10 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:10 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:10 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:10 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:10 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@56fdcb0e, org.springframework.security.web.context.SecurityContextPersistenceFilter@30728fe2, org.springframework.security.web.header.HeaderWriterFilter@27bd054a, org.springframework.web.filter.CorsFilter@71e20f1c, org.springframework.security.web.authentication.logout.LogoutFilter@7c709ccc, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1377/0x00000007c0cc2428@15c28d6d, com.qf.myafterprojecy.config.JwtAuthenticationFilter@23ec093a, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@7edfa1a1, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@31876c65, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@73c3fbe6, org.springframework.security.web.session.SessionManagementFilter@5a367037, org.springframework.security.web.access.ExceptionTranslationFilter@396a5770, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@63978558] +2025-11-05 15:56:10 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:10 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:10 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:10 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.556 seconds (JVM running for 19642.999) +2025-11-05 15:56:10 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:11 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:12 [Thread-129] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:12 [Thread-129] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:12 [Thread-129] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:12 [Thread-129] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:12 [Thread-129] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:12 [Thread-129] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:12 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:12 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:12 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:12 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:12 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:12 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:12 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:12 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:12 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:12 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:12 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 184 ms +2025-11-05 15:56:12 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:12 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:12 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:12 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:12 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:12 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:12 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:12 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@3bb64eb8, org.springframework.security.web.context.SecurityContextPersistenceFilter@9029478, org.springframework.security.web.header.HeaderWriterFilter@6a56501b, org.springframework.web.filter.CorsFilter@316be4cc, org.springframework.security.web.authentication.logout.LogoutFilter@70633921, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1380/0x00000007c0cbec28@1ffa0f8e, com.qf.myafterprojecy.config.JwtAuthenticationFilter@71dc85bd, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@4d5ed65c, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@22cc9e83, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@6d6adbf0, org.springframework.security.web.session.SessionManagementFilter@75274f6b, org.springframework.security.web.access.ExceptionTranslationFilter@2a98a67c, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@6177a716] +2025-11-05 15:56:12 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:12 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:12 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:12 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.443 seconds (JVM running for 19645.21) +2025-11-05 15:56:12 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:14 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:14 [Thread-133] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:14 [Thread-133] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:14 [Thread-133] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:14 [Thread-133] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:14 [Thread-133] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:14 [Thread-133] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:14 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:14 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:14 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:14 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:14 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:14 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:14 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:14 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:14 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:14 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:14 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 206 ms +2025-11-05 15:56:14 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:14 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:14 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:14 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:14 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:14 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:14 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:14 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@50267c13, org.springframework.security.web.context.SecurityContextPersistenceFilter@66c6adf3, org.springframework.security.web.header.HeaderWriterFilter@533a01d6, org.springframework.web.filter.CorsFilter@6dce9e8f, org.springframework.security.web.authentication.logout.LogoutFilter@1084dbcf, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1383/0x00000007c0c55028@53a2c9f6, com.qf.myafterprojecy.config.JwtAuthenticationFilter@76b31aa9, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@18a9f28f, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@1b9e74fd, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@457427da, org.springframework.security.web.session.SessionManagementFilter@6bbc068, org.springframework.security.web.access.ExceptionTranslationFilter@4d8672e6, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@3486867e] +2025-11-05 15:56:14 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:15 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:15 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:15 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.538 seconds (JVM running for 19647.524) +2025-11-05 15:56:15 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:18 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:18 [Thread-137] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:18 [Thread-137] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:18 [Thread-137] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:18 [Thread-137] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:18 [Thread-137] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:18 [Thread-137] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:18 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:18 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:18 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:18 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:19 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 24 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:19 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:19 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:19 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:19 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:19 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:19 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 187 ms +2025-11-05 15:56:19 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:19 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:19 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:19 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:19 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:19 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:19 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:19 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@259a04e5, org.springframework.security.web.context.SecurityContextPersistenceFilter@270a7a60, org.springframework.security.web.header.HeaderWriterFilter@43286bc8, org.springframework.web.filter.CorsFilter@7561102e, org.springframework.security.web.authentication.logout.LogoutFilter@58e4df8d, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1386/0x00000007c0bccc28@4169c913, com.qf.myafterprojecy.config.JwtAuthenticationFilter@2504c944, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@29dbaa70, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@29ade2a8, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@62f47963, org.springframework.security.web.session.SessionManagementFilter@711e9ffc, org.springframework.security.web.access.ExceptionTranslationFilter@2c845b7a, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@72afef2d] +2025-11-05 15:56:19 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:19 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:19 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:19 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.468 seconds (JVM running for 19651.845) +2025-11-05 15:56:19 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:20 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:20 [Thread-141] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:20 [Thread-141] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:20 [Thread-141] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:20 [Thread-141] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:20 [Thread-141] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:20 [Thread-141] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:21 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:21 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:21 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:21 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:21 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 21 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:21 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:21 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:21 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:21 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:21 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:21 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 221 ms +2025-11-05 15:56:21 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:21 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:21 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:21 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:21 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:21 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:21 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:21 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@48d4466a, org.springframework.security.web.context.SecurityContextPersistenceFilter@3c63fe3b, org.springframework.security.web.header.HeaderWriterFilter@2db0cb17, org.springframework.web.filter.CorsFilter@1d977b5e, org.springframework.security.web.authentication.logout.LogoutFilter@60a40411, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1389/0x00000007c0b3b828@24919f8f, com.qf.myafterprojecy.config.JwtAuthenticationFilter@5a8031d4, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@54357ea6, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@7ff6ff44, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@3f036aab, org.springframework.security.web.session.SessionManagementFilter@30a19fd3, org.springframework.security.web.access.ExceptionTranslationFilter@53777928, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@3c883234] +2025-11-05 15:56:21 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:21 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:21 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:21 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.496 seconds (JVM running for 19654.097) +2025-11-05 15:56:21 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:23 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:23 [Thread-145] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:23 [Thread-145] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:23 [Thread-145] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:23 [Thread-145] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:23 [Thread-145] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:23 [Thread-145] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:23 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:23 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:23 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:23 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:23 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 24 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:23 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:23 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:23 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:23 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:23 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:23 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 224 ms +2025-11-05 15:56:23 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:23 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:23 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:23 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:23 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:23 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:23 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:23 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@a8e973a, org.springframework.security.web.context.SecurityContextPersistenceFilter@21629e9e, org.springframework.security.web.header.HeaderWriterFilter@3ad7a989, org.springframework.web.filter.CorsFilter@f8ff759, org.springframework.security.web.authentication.logout.LogoutFilter@307e6cf9, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1392/0x00000007c0aea828@3786dc56, com.qf.myafterprojecy.config.JwtAuthenticationFilter@48d9eb03, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@5a5cd319, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@5dc0b23a, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@70b63cc1, org.springframework.security.web.session.SessionManagementFilter@4583a8c8, org.springframework.security.web.access.ExceptionTranslationFilter@7e60a4b7, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@23f7d6f6] +2025-11-05 15:56:23 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:23 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:23 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:23 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.517 seconds (JVM running for 19656.308) +2025-11-05 15:56:23 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:25 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:25 [Thread-149] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:25 [Thread-149] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:25 [Thread-149] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:25 [Thread-149] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:25 [Thread-149] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:25 [Thread-149] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:25 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:25 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:25 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:25 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:25 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 56 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:25 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:25 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:25 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:25 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:25 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:25 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 315 ms +2025-11-05 15:56:25 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:25 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:25 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:25 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:25 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:25 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:25 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:26 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@2d52d41e, org.springframework.security.web.context.SecurityContextPersistenceFilter@190c6e4, org.springframework.security.web.header.HeaderWriterFilter@40a69b79, org.springframework.web.filter.CorsFilter@4d5d23c5, org.springframework.security.web.authentication.logout.LogoutFilter@75306e36, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1395/0x00000007c0a65428@595a1aaa, com.qf.myafterprojecy.config.JwtAuthenticationFilter@54d4b962, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@eea1e6d, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@7ae3319a, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@473e0d33, org.springframework.security.web.session.SessionManagementFilter@42595454, org.springframework.security.web.access.ExceptionTranslationFilter@47990d86, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@4a61dec7] +2025-11-05 15:56:26 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:26 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:26 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:26 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.611 seconds (JVM running for 19658.67) +2025-11-05 15:56:26 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:27 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:27 [Thread-153] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:27 [Thread-153] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:27 [Thread-153] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:27 [Thread-153] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:27 [Thread-153] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:27 [Thread-153] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:27 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:27 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:27 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:28 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:28 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:28 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:28 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:28 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:28 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:28 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:28 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 190 ms +2025-11-05 15:56:28 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:28 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:28 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:28 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:28 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:28 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:28 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:28 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@fcd0b65, org.springframework.security.web.context.SecurityContextPersistenceFilter@c0b26f0, org.springframework.security.web.header.HeaderWriterFilter@3c4a30d9, org.springframework.web.filter.CorsFilter@5d3df911, org.springframework.security.web.authentication.logout.LogoutFilter@d09a7be, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1398/0x00000007c045b828@5f2ae725, com.qf.myafterprojecy.config.JwtAuthenticationFilter@717752cd, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@511cd639, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@3cbdf83b, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@71d350ca, org.springframework.security.web.session.SessionManagementFilter@1bcb0a8, org.springframework.security.web.access.ExceptionTranslationFilter@70d5b3e3, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@651581c4] +2025-11-05 15:56:28 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:28 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:28 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:28 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.491 seconds (JVM running for 19660.885) +2025-11-05 15:56:28 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:29 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:30 [Thread-157] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:30 [Thread-157] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:30 [Thread-157] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:30 [Thread-157] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:30 [Thread-157] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:30 [Thread-157] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:30 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:30 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:30 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:30 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:30 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 21 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:30 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:30 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:30 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:30 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:30 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:30 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 213 ms +2025-11-05 15:56:30 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:30 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:30 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:30 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:30 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:30 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:30 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:30 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@5878333e, org.springframework.security.web.context.SecurityContextPersistenceFilter@50ca4c71, org.springframework.security.web.header.HeaderWriterFilter@651c1a0, org.springframework.web.filter.CorsFilter@840c4ad, org.springframework.security.web.authentication.logout.LogoutFilter@69664e8d, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1401/0x00000007c02e7c28@5d324b1b, com.qf.myafterprojecy.config.JwtAuthenticationFilter@33805cc4, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@6fb1c93e, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@676549a9, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@7401c86c, org.springframework.security.web.session.SessionManagementFilter@789e975b, org.springframework.security.web.access.ExceptionTranslationFilter@7ad8b38d, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@238cd4f4] +2025-11-05 15:56:30 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:30 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:30 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:30 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.477 seconds (JVM running for 19663.149) +2025-11-05 15:56:30 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:32 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 2 class path changes (0 additions, 0 deletions, 2 modifications) +2025-11-05 15:56:32 [Thread-161] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:32 [Thread-161] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:32 [Thread-161] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:32 [Thread-161] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:32 [Thread-161] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:32 [Thread-161] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:32 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:32 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:32 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:32 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:32 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:32 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:32 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:32 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:32 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:32 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:32 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 185 ms +2025-11-05 15:56:32 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:32 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:32 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:32 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:32 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:32 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:32 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:32 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@34f4b055, org.springframework.security.web.context.SecurityContextPersistenceFilter@2714e47b, org.springframework.security.web.header.HeaderWriterFilter@10783c2a, org.springframework.web.filter.CorsFilter@61c99f4c, org.springframework.security.web.authentication.logout.LogoutFilter@4302c6e2, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1404/0x00000007c026cc28@bcebf9f, com.qf.myafterprojecy.config.JwtAuthenticationFilter@3425433, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@5a6e43f, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@54ee11cd, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@d1ba7ae, org.springframework.security.web.session.SessionManagementFilter@57181a81, org.springframework.security.web.access.ExceptionTranslationFilter@ab514a2, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@115016da] +2025-11-05 15:56:32 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:32 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:32 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:32 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.441 seconds (JVM running for 19665.332) +2025-11-05 15:56:32 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:51 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:51 [Thread-165] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:51 [Thread-165] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:51 [Thread-165] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:51 [Thread-165] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:51 [Thread-165] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:52 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:52 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:52 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:52 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:52 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:52 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:52 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:52 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:52 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:52 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:52 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 180 ms +2025-11-05 15:56:52 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:52 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:52 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:52 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:52 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:52 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:52 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:52 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@7243247d, org.springframework.security.web.context.SecurityContextPersistenceFilter@4951ae6c, org.springframework.security.web.header.HeaderWriterFilter@7e62eea2, org.springframework.web.filter.CorsFilter@4bc76614, org.springframework.security.web.authentication.logout.LogoutFilter@44d5a3fd, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1407/0x00000007c0212828@118a224c, com.qf.myafterprojecy.config.JwtAuthenticationFilter@1e52515c, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@66bfa941, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@fc14cca, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@96a9476, org.springframework.security.web.session.SessionManagementFilter@5015f94, org.springframework.security.web.access.ExceptionTranslationFilter@53bf8fc8, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@78a8826] +2025-11-05 15:56:52 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:52 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:52 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:52 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.419 seconds (JVM running for 19684.941) +2025-11-05 15:56:52 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:56:56 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:56:57 [Thread-169] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:56:57 [Thread-169] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:57 [Thread-169] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:56:57 [Thread-169] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:57 [Thread-169] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:56:57 [Thread-169] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:56:57 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:56:57 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:56:57 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:56:57 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:56:57 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 22 ms. Found 6 JPA repository interfaces. +2025-11-05 15:56:57 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:56:57 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:56:57 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:56:57 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:56:57 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:56:57 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 218 ms +2025-11-05 15:56:57 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:56:57 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:56:57 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:56:57 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:56:57 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:56:57 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:56:57 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:56:57 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@74161ed2, org.springframework.security.web.context.SecurityContextPersistenceFilter@3ab1b3cf, org.springframework.security.web.header.HeaderWriterFilter@45c39030, org.springframework.web.filter.CorsFilter@643e1758, org.springframework.security.web.authentication.logout.LogoutFilter@27cecc11, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1410/0x00000007c00ee828@3a1d1c95, com.qf.myafterprojecy.config.JwtAuthenticationFilter@7efac699, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@5fd1a64e, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@6caff94, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@68487dd9, org.springframework.security.web.session.SessionManagementFilter@732370d, org.springframework.security.web.access.ExceptionTranslationFilter@3dbb17c0, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@6ac7b2fc] +2025-11-05 15:56:57 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:56:57 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:56:57 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:56:57 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.485 seconds (JVM running for 19690.237) +2025-11-05 15:56:57 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:00 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:00 [Thread-173] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:00 [Thread-173] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:00 [Thread-173] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:00 [Thread-173] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:00 [Thread-173] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:00 [Thread-173] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:00 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:00 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:00 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:00 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:00 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:00 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:00 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:00 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:00 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:00 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:00 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 183 ms +2025-11-05 15:57:00 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:00 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:00 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:00 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:00 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:00 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:00 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:00 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@30cb3994, org.springframework.security.web.context.SecurityContextPersistenceFilter@202ea4f6, org.springframework.security.web.header.HeaderWriterFilter@7c2414bf, org.springframework.web.filter.CorsFilter@17bbf598, org.springframework.security.web.authentication.logout.LogoutFilter@522269ca, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1413/0x00000007c00d3428@61e427db, com.qf.myafterprojecy.config.JwtAuthenticationFilter@1614526a, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@4c15f398, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@10c88749, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@5675543b, org.springframework.security.web.session.SessionManagementFilter@155bee77, org.springframework.security.web.access.ExceptionTranslationFilter@6b30fcef, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@1c221731] +2025-11-05 15:57:00 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:00 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:00 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:00 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.445 seconds (JVM running for 19693.441) +2025-11-05 15:57:00 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:05 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:05 [Thread-177] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:05 [Thread-177] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:05 [Thread-177] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:05 [Thread-177] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:05 [Thread-177] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:05 [Thread-177] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:05 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:05 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:05 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:05 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:05 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:05 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:05 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:05 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:05 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:05 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:05 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 185 ms +2025-11-05 15:57:05 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:05 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:05 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:05 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:05 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:05 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:06 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:06 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@15641c87, org.springframework.security.web.context.SecurityContextPersistenceFilter@41708406, org.springframework.security.web.header.HeaderWriterFilter@f42be37, org.springframework.web.filter.CorsFilter@42d8d032, org.springframework.security.web.authentication.logout.LogoutFilter@29c6d509, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1416/0x00000007c00c8828@3b22c9e6, com.qf.myafterprojecy.config.JwtAuthenticationFilter@996c420, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@7021c7d4, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@6a087ce1, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@49321b9f, org.springframework.security.web.session.SessionManagementFilter@4e190881, org.springframework.security.web.access.ExceptionTranslationFilter@65fa8347, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@69c422e6] +2025-11-05 15:57:06 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:06 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:06 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:06 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.458 seconds (JVM running for 19698.702) +2025-11-05 15:57:06 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:08 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:08 [Thread-181] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:08 [Thread-181] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:08 [Thread-181] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:08 [Thread-181] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:08 [Thread-181] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:08 [Thread-181] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:09 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:09 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:09 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:09 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:09 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:09 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:09 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:09 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:09 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:09 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:09 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 230 ms +2025-11-05 15:57:09 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:09 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:09 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:09 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:09 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:09 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:09 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:09 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@6503ed88, org.springframework.security.web.context.SecurityContextPersistenceFilter@1a0391cc, org.springframework.security.web.header.HeaderWriterFilter@34c85133, org.springframework.web.filter.CorsFilter@ae447a4, org.springframework.security.web.authentication.logout.LogoutFilter@7633f71d, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1419/0x00000007c0e5d428@761316b6, com.qf.myafterprojecy.config.JwtAuthenticationFilter@3074431e, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@335907a7, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@45ee8936, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@6f2db643, org.springframework.security.web.session.SessionManagementFilter@7819bf4b, org.springframework.security.web.access.ExceptionTranslationFilter@25019e5d, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@78368839] +2025-11-05 15:57:09 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:09 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:09 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:09 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.491 seconds (JVM running for 19702.081) +2025-11-05 15:57:09 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:11 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:11 [Thread-185] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:11 [Thread-185] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:11 [Thread-185] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:11 [Thread-185] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:11 [Thread-185] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:11 [Thread-185] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:11 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:11 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:11 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:11 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:11 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 23 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:11 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:11 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:11 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:11 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:11 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:11 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 204 ms +2025-11-05 15:57:11 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:11 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:11 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:11 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:11 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:11 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:11 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:11 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@c20ba8e, org.springframework.security.web.context.SecurityContextPersistenceFilter@5dd3a379, org.springframework.security.web.header.HeaderWriterFilter@83be691, org.springframework.web.filter.CorsFilter@cd7623d, org.springframework.security.web.authentication.logout.LogoutFilter@1378c642, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1422/0x00000007c0e70428@6c88d9ad, com.qf.myafterprojecy.config.JwtAuthenticationFilter@2386e8ee, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@6ce90ddf, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@3774b474, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@169fe038, org.springframework.security.web.session.SessionManagementFilter@1f32eb2c, org.springframework.security.web.access.ExceptionTranslationFilter@60fa2e22, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@2c5c9944] +2025-11-05 15:57:11 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:11 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:11 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:11 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.476 seconds (JVM running for 19704.311) +2025-11-05 15:57:11 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:14 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:14 [Thread-189] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:14 [Thread-189] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:14 [Thread-189] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:14 [Thread-189] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:14 [Thread-189] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:14 [Thread-189] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:14 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:14 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:14 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:14 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:14 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:14 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:14 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:14 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:14 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:14 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:14 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 180 ms +2025-11-05 15:57:14 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:14 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:14 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:14 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:14 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:14 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:14 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:14 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@177b5c58, org.springframework.security.web.context.SecurityContextPersistenceFilter@1e3a8b1d, org.springframework.security.web.header.HeaderWriterFilter@1db56b70, org.springframework.web.filter.CorsFilter@6794179c, org.springframework.security.web.authentication.logout.LogoutFilter@53e88bfb, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1425/0x00000007c0e83428@4cc59e17, com.qf.myafterprojecy.config.JwtAuthenticationFilter@48d74c9a, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@58a7139d, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@24d92cbc, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@6e9c402b, org.springframework.security.web.session.SessionManagementFilter@7ec86d8f, org.springframework.security.web.access.ExceptionTranslationFilter@2fa403ac, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@6f7b9d5f] +2025-11-05 15:57:15 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:15 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:15 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:15 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.468 seconds (JVM running for 19707.592) +2025-11-05 15:57:15 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:16 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:16 [Thread-193] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:16 [Thread-193] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:16 [Thread-193] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:16 [Thread-193] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:16 [Thread-193] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:16 [Thread-193] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:16 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:16 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:16 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:16 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:16 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 18 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:16 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:16 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:16 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:16 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:16 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:16 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 168 ms +2025-11-05 15:57:17 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:17 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:17 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:17 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:17 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:17 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:17 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:17 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@3f69e9bd, org.springframework.security.web.context.SecurityContextPersistenceFilter@1416e695, org.springframework.security.web.header.HeaderWriterFilter@174374f1, org.springframework.web.filter.CorsFilter@76db14e3, org.springframework.security.web.authentication.logout.LogoutFilter@6832dec4, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1428/0x00000007c0e96428@3ade28b3, com.qf.myafterprojecy.config.JwtAuthenticationFilter@5e5bf86e, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@67381b0a, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@6b501fe0, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@66dc6dcc, org.springframework.security.web.session.SessionManagementFilter@39d33219, org.springframework.security.web.access.ExceptionTranslationFilter@150cda3f, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@201b200c] +2025-11-05 15:57:17 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:17 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:17 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:17 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.437 seconds (JVM running for 19709.759) +2025-11-05 15:57:17 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:43 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:43 [Thread-197] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:43 [Thread-197] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:43 [Thread-197] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:43 [Thread-197] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:43 [Thread-197] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:43 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:43 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:43 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:43 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:43 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:43 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:43 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:43 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:43 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:43 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:43 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 195 ms +2025-11-05 15:57:43 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:43 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:43 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:43 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:43 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:43 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:44 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:44 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@1b17e29f, org.springframework.security.web.context.SecurityContextPersistenceFilter@59bd859c, org.springframework.security.web.header.HeaderWriterFilter@326a5026, org.springframework.web.filter.CorsFilter@a010b5b, org.springframework.security.web.authentication.logout.LogoutFilter@3709dda4, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1431/0x00000007c0ea9428@37dfa267, com.qf.myafterprojecy.config.JwtAuthenticationFilter@66c47793, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@24eba915, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@44e036ce, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@2c040e0a, org.springframework.security.web.session.SessionManagementFilter@2fed2cd6, org.springframework.security.web.access.ExceptionTranslationFilter@2d4a1c32, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@42313373] +2025-11-05 15:57:44 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:44 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:44 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:44 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.48 seconds (JVM running for 19736.676) +2025-11-05 15:57:44 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:47 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:47 [Thread-201] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:47 [Thread-201] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:47 [Thread-201] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:47 [Thread-201] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:47 [Thread-201] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:47 [Thread-201] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:48 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:48 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:48 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:48 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:48 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 24 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:48 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:48 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:48 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:48 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:48 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:48 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 278 ms +2025-11-05 15:57:48 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:48 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:48 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:48 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:48 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:48 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:48 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:48 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@7ae472a3, org.springframework.security.web.context.SecurityContextPersistenceFilter@77d5f18, org.springframework.security.web.header.HeaderWriterFilter@4e0d593f, org.springframework.web.filter.CorsFilter@5555596f, org.springframework.security.web.authentication.logout.LogoutFilter@25a7296e, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1434/0x00000007c0ebc428@12a135f4, com.qf.myafterprojecy.config.JwtAuthenticationFilter@34d56a85, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@7b346f95, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@5f54156d, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@23e7fb80, org.springframework.security.web.session.SessionManagementFilter@658e504f, org.springframework.security.web.access.ExceptionTranslationFilter@95ead77, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@416a4936] +2025-11-05 15:57:48 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:48 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:48 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:48 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.615 seconds (JVM running for 19741.207) +2025-11-05 15:57:48 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:51 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:51 [Thread-205] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:51 [Thread-205] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:51 [Thread-205] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:51 [Thread-205] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:51 [Thread-205] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:51 [Thread-205] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:51 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:51 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:51 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:51 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:51 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 19 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:51 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:51 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:51 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:51 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:51 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:51 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 187 ms +2025-11-05 15:57:51 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:51 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:51 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:51 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:51 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:51 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:51 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:51 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@13f0b1d0, org.springframework.security.web.context.SecurityContextPersistenceFilter@72b2dc9d, org.springframework.security.web.header.HeaderWriterFilter@7ee10647, org.springframework.web.filter.CorsFilter@4f9fe9a1, org.springframework.security.web.authentication.logout.LogoutFilter@5e1d3cfb, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1437/0x00000007c0ecf428@1e58a9dd, com.qf.myafterprojecy.config.JwtAuthenticationFilter@1a24f228, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@2303396c, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@5526d075, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@4ce4ab69, org.springframework.security.web.session.SessionManagementFilter@30f42334, org.springframework.security.web.access.ExceptionTranslationFilter@3abd6bac, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@77d55a7f] +2025-11-05 15:57:51 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:51 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:51 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:51 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.458 seconds (JVM running for 19744.474) +2025-11-05 15:57:51 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:53 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:53 [Thread-209] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:53 [Thread-209] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:53 [Thread-209] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:53 [Thread-209] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:53 [Thread-209] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:53 [Thread-209] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:53 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:53 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:53 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:53 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:53 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 23 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:53 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:53 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:54 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:54 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:54 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:54 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 196 ms +2025-11-05 15:57:54 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:54 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:54 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:54 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:54 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:54 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:54 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:54 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@4dbdade8, org.springframework.security.web.context.SecurityContextPersistenceFilter@246701b9, org.springframework.security.web.header.HeaderWriterFilter@1efe68f8, org.springframework.web.filter.CorsFilter@754d6441, org.springframework.security.web.authentication.logout.LogoutFilter@101b8581, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1440/0x00000007c0ee2428@42791ec7, com.qf.myafterprojecy.config.JwtAuthenticationFilter@44eb946c, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@19ffc721, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@74abd54e, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@46645701, org.springframework.security.web.session.SessionManagementFilter@13ed7a75, org.springframework.security.web.access.ExceptionTranslationFilter@4a5eff73, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@7e0e1e2d] +2025-11-05 15:57:54 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:54 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:54 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:54 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.459 seconds (JVM running for 19746.757) +2025-11-05 15:57:54 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:57:55 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:57:55 [Thread-213] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:57:55 [Thread-213] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:55 [Thread-213] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:57:55 [Thread-213] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:55 [Thread-213] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:57:55 [Thread-213] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:57:56 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:57:56 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:57:56 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:57:56 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:57:56 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 6 JPA repository interfaces. +2025-11-05 15:57:56 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:57:56 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:57:56 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:57:56 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:57:56 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:57:56 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 190 ms +2025-11-05 15:57:56 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:57:56 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:57:56 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:57:56 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:57:56 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:57:56 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:57:56 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:57:56 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@a1384f2, org.springframework.security.web.context.SecurityContextPersistenceFilter@4f6266b1, org.springframework.security.web.header.HeaderWriterFilter@418d8fef, org.springframework.web.filter.CorsFilter@5607cd72, org.springframework.security.web.authentication.logout.LogoutFilter@742be145, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1443/0x00000007c0ef5428@c3e8ba2, com.qf.myafterprojecy.config.JwtAuthenticationFilter@68b2cf83, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@64911be5, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@49ce126f, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@36659eb0, org.springframework.security.web.session.SessionManagementFilter@7f03d181, org.springframework.security.web.access.ExceptionTranslationFilter@4bbc1c84, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@3dee63bc] +2025-11-05 15:57:56 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:57:56 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:57:56 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:57:56 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.426 seconds (JVM running for 19748.981) +2025-11-05 15:57:56 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:58:01 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:58:01 [Thread-217] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:58:01 [Thread-217] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:58:01 [Thread-217] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:58:01 [Thread-217] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:58:01 [Thread-217] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:58:01 [Thread-217] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:58:01 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:58:01 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:58:01 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:58:01 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:58:01 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 21 ms. Found 6 JPA repository interfaces. +2025-11-05 15:58:01 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:58:01 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:58:01 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:58:01 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:58:01 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:58:01 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 196 ms +2025-11-05 15:58:01 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:58:01 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:58:01 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:58:01 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:58:01 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:58:01 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:58:01 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:58:01 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@5f391da5, org.springframework.security.web.context.SecurityContextPersistenceFilter@1c31b4c, org.springframework.security.web.header.HeaderWriterFilter@66d0a13c, org.springframework.web.filter.CorsFilter@2eae6010, org.springframework.security.web.authentication.logout.LogoutFilter@599bc924, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1446/0x00000007c0f08428@a563126, com.qf.myafterprojecy.config.JwtAuthenticationFilter@79153e0b, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@62cf1463, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@1f58047, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@5ce942dd, org.springframework.security.web.session.SessionManagementFilter@488a4e5, org.springframework.security.web.access.ExceptionTranslationFilter@25a8c8e7, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@66084435] +2025-11-05 15:58:01 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:58:01 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:58:01 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:58:01 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.451 seconds (JVM running for 19754.359) +2025-11-05 15:58:01 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:58:04 [File Watcher] INFO o.s.b.d.a.LocalDevToolsAutoConfiguration$RestartingClassPathChangeChangedEventListener - Restarting due to 1 class path change (0 additions, 0 deletions, 1 modification) +2025-11-05 15:58:04 [Thread-221] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] +2025-11-05 15:58:04 [Thread-221] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) + java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:58:04 [Thread-221] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [WebProjectHikariCP connection adder] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: + sun.misc.Unsafe.park(Native Method) + java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) + java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) + java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467) + java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073) + java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) + java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + java.lang.Thread.run(Thread.java:750) +2025-11-05 15:58:04 [Thread-221] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:58:04 [Thread-221] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown initiated... +2025-11-05 15:58:04 [Thread-221] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Shutdown completed. +2025-11-05 15:58:04 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 10980 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-05 15:58:04 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-05 15:58:04 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-05 15:58:04 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-05 15:58:04 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 20 ms. Found 6 JPA repository interfaces. +2025-11-05 15:58:04 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-05 15:58:04 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-05 15:58:04 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-05 15:58:04 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-05 15:58:04 [restartedMain] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-05 15:58:04 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 186 ms +2025-11-05 15:58:04 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-05 15:58:04 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-05 15:58:04 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-05 15:58:04 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-05 15:58:04 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] +2025-11-05 15:58:04 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-05 15:58:04 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-05 15:58:05 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@441173c5, org.springframework.security.web.context.SecurityContextPersistenceFilter@1c1a47b2, org.springframework.security.web.header.HeaderWriterFilter@59b212fe, org.springframework.web.filter.CorsFilter@524e944a, org.springframework.security.web.authentication.logout.LogoutFilter@3bf0633b, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1449/0x00000007c0f1b428@7c0dfd94, com.qf.myafterprojecy.config.JwtAuthenticationFilter@2b97c0e6, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@5e99400b, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@17758cc4, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@84dce27, org.springframework.security.web.session.SessionManagementFilter@60604dca, org.springframework.security.web.access.ExceptionTranslationFilter@7584cb4c, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@27b13e61] +2025-11-05 15:58:05 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-05 15:58:05 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-05 15:58:05 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-05 15:58:05 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 0.451 seconds (JVM running for 19757.613) +2025-11-05 15:58:05 [restartedMain] INFO o.s.b.d.a.ConditionEvaluationDeltaLoggingListener - Condition evaluation unchanged +2025-11-05 15:58:21 [http-nio-8080-exec-1] INFO o.a.c.c.C.[Tomcat-3].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-05 15:58:21 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' +2025-11-05 15:58:21 [http-nio-8080-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 1 ms +2025-11-05 15:58:21 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:58:21Z, a difference of 4046055 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:58:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:58:21 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:58:21Z, a difference of 4046889 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:58:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:58:23 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:58:23Z, a difference of 4048733 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:58:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:58:24 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:58:24Z, a difference of 4049516 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:58:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:58:36 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:58:36Z, a difference of 4061280 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:58:36 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:59:03 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:59:03Z, a difference of 4088946 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:59:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:59:03 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:59:03Z, a difference of 4088954 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:59:03 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:59:03Z, a difference of 4088954 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:59:03 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-05 15:59:03 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 15:59:11 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:59:11Z, a difference of 4096112 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:59:11 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:59:11Z, a difference of 4096114 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:59:11 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T15:59:11Z, a difference of 4096115 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 15:59:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 15:59:11 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-05 15:59:11 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 16:07:30 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:07:30Z, a difference of 4595289 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:07:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:07:30 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:07:30Z, a difference of 4595601 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:07:30 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 16:07:30 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 16:07:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 16:07:30 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:07:30Z, a difference of 4595642 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:07:30 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 16:07:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:07:30 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:07:30Z, a difference of 4595656 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:07:30 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 16:07:30 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 16:07:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 16:07:30 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:07:30Z, a difference of 4595667 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:07:30 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 16:07:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:07:30 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:07:30Z, a difference of 4595682 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:07:30 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 16:07:30 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 16:07:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 16:07:30 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:07:30Z, a difference of 4595692 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:07:30 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 16:07:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:07:30 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:07:30Z, a difference of 4595703 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:07:30 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 16:07:30 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 16:07:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 16:07:30 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:07:30Z, a difference of 4595712 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:07:30 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 16:07:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:08:08 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:08Z, a difference of 4633818 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:08 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-05 16:08:08 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:08Z, a difference of 4633835 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:08 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:08Z, a difference of 4633836 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:08 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:08Z, a difference of 4633835 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:08 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:08Z, a difference of 4633836 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:08 [http-nio-8080-exec-3] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 16:08:08 [http-nio-8080-exec-1] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 16:08:08 [http-nio-8080-exec-10] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 16:08:08 [http-nio-8080-exec-4] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/category-attributes/check-exists,异常消息:Required request parameter 'categoryId' for method parameter type Integer is not present +2025-11-05 16:08:08 [http-nio-8080-exec-3] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 16:08:08 [http-nio-8080-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 16:08:08 [http-nio-8080-exec-1] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 16:08:08 [http-nio-8080-exec-4] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required request parameter 'categoryId' for method parameter type Integer is not present] +2025-11-05 16:08:08 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:08Z, a difference of 4633857 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:08 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:08Z, a difference of 4633858 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:08 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:08Z, a difference of 4633859 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:08 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:08Z, a difference of 4633857 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:08 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 16:08:08 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=3 +2025-11-05 16:08:08 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=4 +2025-11-05 16:08:08 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-05 16:08:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 16:08:08 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:08:08 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 16:08:08 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-05 16:08:08 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:08Z, a difference of 4633883 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:08 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:08:08 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:08:09 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:09Z, a difference of 4634428 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:08:09 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:09Z, a difference of 4634443 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:09 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-05 16:08:09 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-05 16:08:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-05 16:08:09 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:09Z, a difference of 4634458 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:09 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 16:08:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:08:09 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:09Z, a difference of 4634470 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:09 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-05 16:08:09 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-05 16:08:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-05 16:08:09 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:09Z, a difference of 4634481 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:09 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 16:08:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:08:09 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:09Z, a difference of 4634492 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:09 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-05 16:08:09 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-05 16:08:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-05 16:08:09 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:09Z, a difference of 4634503 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:09 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 16:08:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-05 16:08:09 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:09Z, a difference of 4634513 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:09 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-05 16:08:09 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-05 16:08:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-05 16:08:09 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} +io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-05T14:50:55Z. Current time: 2025-11-05T16:08:09Z, a difference of 4634522 milliseconds. Allowed clock skew: 0 milliseconds. + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:385) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:481) ~[jjwt-0.9.1.jar:0.9.1] + at io.jsonwebtoken.impl.DefaultJwtParser.parseClaimsJws(DefaultJwtParser.java:541) ~[jjwt-0.9.1.jar:0.9.1] + at com.qf.myafterprojecy.utils.JwtUtils.getAllClaimsFromToken(JwtUtils.java:56) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getClaimFromToken(JwtUtils.java:48) ~[classes/:na] + at com.qf.myafterprojecy.utils.JwtUtils.getUsernameFromToken(JwtUtils.java:34) ~[classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.validateToken(JwtAuthenticationFilter.java:88) [classes/:na] + at com.qf.myafterprojecy.config.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:48) [classes/:na] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at com.qf.myafterprojecy.config.SecurityConfig.lambda$1(SecurityConfig.java:118) [classes/:na] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:346) [spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:221) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:186) ~[spring-security-web-5.6.8.jar:5.6.8] + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) ~[spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.23.jar:5.3.23] + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) [spring-web-5.3.23.jar:5.3.23] + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.68.jar:9.0.68] + at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_461] +2025-11-05 16:08:09 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-05 16:08:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] diff --git a/logs/web_project.log.2025-10-27.0.gz b/logs/web_project.log.2025-10-27.0.gz deleted file mode 100644 index 13ba6b9fcdbf8b9ddd3b5dbb908d7979a2a7d701..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125514 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�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 LZher*RU-Ib=x5uu diff --git a/logs/web_project.log.2025-10-28.0.gz b/logs/web_project.log.2025-10-28.0.gz deleted file mode 100644 index 501b7acfbd6040cb79af564f5aa0087f42edf351..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33066 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 DUMXIJ literal 0 HcmV?d00001 diff --git a/src/main/java/com/qf/myafterprojecy/config/CorsConfig.java b/src/main/java/com/qf/myafterprojecy/config/CorsConfig.java index 22a52a6..619b957 100644 --- a/src/main/java/com/qf/myafterprojecy/config/CorsConfig.java +++ b/src/main/java/com/qf/myafterprojecy/config/CorsConfig.java @@ -20,23 +20,33 @@ public class CorsConfig { // 创建CORS配置对象 CorsConfiguration config = new CorsConfiguration(); - // 允许的来源,这里允许所有来源,实际生产环境应该限制特定域名 + // 允许的来源,使用通配符模式 config.addAllowedOriginPattern("*"); // 允许携带凭证(如Cookie) config.setAllowCredentials(true); - // 允许的请求方法 - config.addAllowedMethod("*"); + // 明确列出允许的HTTP方法,比使用通配符更安全 + config.addAllowedMethod("GET"); + config.addAllowedMethod("POST"); + config.addAllowedMethod("PUT"); + config.addAllowedMethod("DELETE"); + config.addAllowedMethod("OPTIONS"); + config.addAllowedMethod("PATCH"); // 允许的请求头 config.addAllowedHeader("*"); - // 暴露的响应头,这些头信息可以被前端JavaScript访问 - config.addExposedHeader("*"); + // 明确暴露的响应头,对于JWT认证很重要 + config.addExposedHeader("Authorization"); + config.addExposedHeader("Content-Type"); + config.addExposedHeader("X-Requested-With"); + config.addExposedHeader("Accept"); + config.addExposedHeader("Access-Control-Allow-Origin"); + config.addExposedHeader("Access-Control-Allow-Credentials"); // 设置预检请求的有效期(秒) - config.setMaxAge(3600L); + config.setMaxAge(86400L); // 增加到24小时,减少预检请求次数 // 创建基于URL的CORS配置源 UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); diff --git a/src/main/java/com/qf/myafterprojecy/config/JwtAuthenticationFilter.java b/src/main/java/com/qf/myafterprojecy/config/JwtAuthenticationFilter.java index f689add..f711d0b 100644 --- a/src/main/java/com/qf/myafterprojecy/config/JwtAuthenticationFilter.java +++ b/src/main/java/com/qf/myafterprojecy/config/JwtAuthenticationFilter.java @@ -48,7 +48,7 @@ public class JwtAuthenticationFilter extends OncePerRequestFilter { if (token != null && validateToken(token)) { // 从token中获取用户名 String username = jwtUtils.getUsernameFromToken(token); - + System.out.println("username: " + username); // 加载用户信息 UserDetails userDetails = userDetailsService.loadUserByUsername(username); diff --git a/src/main/java/com/qf/myafterprojecy/config/SecurityConfig.java b/src/main/java/com/qf/myafterprojecy/config/SecurityConfig.java index 6c721ce..3b24041 100644 --- a/src/main/java/com/qf/myafterprojecy/config/SecurityConfig.java +++ b/src/main/java/com/qf/myafterprojecy/config/SecurityConfig.java @@ -1,6 +1,6 @@ package com.qf.myafterprojecy.config; -import javax.ws.rs.HttpMethod; +import org.springframework.http.HttpMethod; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; @@ -15,6 +15,7 @@ import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; +import javax.servlet.http.HttpServletResponse; /** * Spring Security配置类 @@ -53,19 +54,24 @@ public class SecurityConfig { @Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { http + // 启用CORS支持,确保与CorsConfig中配置的过滤器配合工作 + .cors().and() // 禁用CSRF保护(对于API服务通常不需要) .csrf().disable() // 配置URL访问权限 .authorizeRequests() // 允许公开访问的路径 + // 登录和认证相关端点应该全部公开 + .antMatchers("/api/auth/**").permitAll() // 公开get请求 - .antMatchers(HttpMethod.GET,"/api/auth/**").permitAll() .antMatchers(HttpMethod.GET,"/api/help/**").permitAll() .antMatchers(HttpMethod.GET,"/api/category-attributes/**").permitAll() .antMatchers(HttpMethod.GET,"/api/markdowns/**").permitAll() .antMatchers(HttpMethod.GET,"/api/articles/**").permitAll() .antMatchers(HttpMethod.GET,"/api/messages/**").permitAll() .antMatchers(HttpMethod.GET,"/api/categories/**").permitAll() + .antMatchers(HttpMethod.GET,"/api/category-attributes/**").permitAll() + .antMatchers(HttpMethod.GET,"/api/nonsense/**").permitAll() // 公开post请求 .antMatchers(HttpMethod.POST,"/api/messages/**").permitAll() .antMatchers(HttpMethod.POST,"/api/users/**").permitAll() @@ -76,7 +82,29 @@ public class SecurityConfig { .and() // 配置会话管理,使用无状态会话 .sessionManagement() - .sessionCreationPolicy(SessionCreationPolicy.STATELESS); + .sessionCreationPolicy(SessionCreationPolicy.STATELESS) + .and() + // 确保OPTIONS请求能够通过,处理预检请求 + .exceptionHandling() + .authenticationEntryPoint((request, response, authException) -> { + // 设置CORS头信息 + response.setHeader("Access-Control-Allow-Origin", "*"); + response.setHeader("Access-Control-Allow-Credentials", "true"); + response.setHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS, PATCH"); + response.setHeader("Access-Control-Allow-Headers", "*"); + response.setHeader("Access-Control-Max-Age", "86400"); + + // 如果是预检请求,直接返回200 + if ("OPTIONS".equalsIgnoreCase(request.getMethod())) { + response.setStatus(HttpServletResponse.SC_OK); + return; + } + + // 未认证处理 + response.setStatus(HttpServletResponse.SC_UNAUTHORIZED); + response.setContentType("application/json;charset=UTF-8"); + response.getWriter().write("{\"message\": \"未授权访问,请先登录\"}"); + }); // 添加JWT认证过滤器 http.addFilterBefore(jwtAuthenticationFilter, UsernamePasswordAuthenticationFilter.class); @@ -86,10 +114,23 @@ public class SecurityConfig { http.addFilterBefore((request, response, chain) -> { // 确保响应使用UTF-8编码 response.setCharacterEncoding("UTF-8"); - response.setContentType("text/html;charset=UTF-8"); + response.setContentType("application/json;charset=UTF-8"); chain.doFilter(request, response); }, JwtAuthenticationFilter.class); + // 配置访问拒绝处理器 + http.exceptionHandling() + .accessDeniedHandler((request, response, accessDeniedException) -> { + // 设置CORS头信息 + response.setHeader("Access-Control-Allow-Origin", "*"); + response.setHeader("Access-Control-Allow-Credentials", "true"); + + // 无权限处理 + response.setStatus(HttpServletResponse.SC_FORBIDDEN); + response.setContentType("application/json;charset=UTF-8"); + response.getWriter().write("{\"message\": \"权限不足,无法访问\"}"); + }); + return http.build(); } } \ No newline at end of file diff --git a/src/main/java/com/qf/myafterprojecy/controller/ArticleController.java b/src/main/java/com/qf/myafterprojecy/controller/ArticleController.java index 39793f0..e8ad2df 100644 --- a/src/main/java/com/qf/myafterprojecy/controller/ArticleController.java +++ b/src/main/java/com/qf/myafterprojecy/controller/ArticleController.java @@ -70,7 +70,6 @@ public class ArticleController { return articleService.getArticlesByAttribute(attributeId); } - /** /** * 根据属性ID获取最新文章(按创建时间降序) * @param attributeId 属性ID @@ -88,7 +87,7 @@ public class ArticleController { * @return 返回包含新创建文章信息的ResponseMessage对象 */ @PostMapping - @PreAuthorize("hasRole('AUTHOR')") + @PreAuthorize("hasRole('ADMIN')") public ResponseMessage
createArticle(@Valid @RequestBody ArticleDto articleDto) { return articleService.saveArticle(articleDto); } @@ -109,7 +108,7 @@ public class ArticleController { * @return 返回包含更新后文章信息的ResponseMessage对象 */ @PutMapping("/{id}") - @PreAuthorize("hasRole('AUTHOR')") + @PreAuthorize("hasRole('ADMIN')") public ResponseMessage
updateArticle( @PathVariable Integer id, @Valid @RequestBody ArticleDto articleDto) { @@ -123,7 +122,7 @@ public class ArticleController { * @return 返回包含被删除文章信息的ResponseMessage对象 */ @DeleteMapping("/{id}") - @PreAuthorize("hasRole('AUTHOR') or hasRole('ADMIN')") + @PreAuthorize("hasRole('ADMIN')") public ResponseMessage
deleteArticle(@PathVariable Integer id) { return articleService.deleteArticle(id); } diff --git a/src/main/java/com/qf/myafterprojecy/controller/CategoryAttributeController.java b/src/main/java/com/qf/myafterprojecy/controller/CategoryAttributeController.java index 716563b..752f5e1 100644 --- a/src/main/java/com/qf/myafterprojecy/controller/CategoryAttributeController.java +++ b/src/main/java/com/qf/myafterprojecy/controller/CategoryAttributeController.java @@ -35,7 +35,11 @@ public class CategoryAttributeController { log.info("接收根据ID获取分类属性的请求: ID={}", id); return categoryAttributeService.getCategoryAttributeById(id); } - + @GetMapping + public ResponseMessage> getAttributeCount() { + log.info("接收获取分类属性数量的请求"); + return categoryAttributeService.getAllCategoryAttributes(); + } /** * 根据分类ID获取属性列表 diff --git a/src/main/java/com/qf/myafterprojecy/controller/HelpController.java b/src/main/java/com/qf/myafterprojecy/controller/HelpController.java index 69f5783..3832106 100644 --- a/src/main/java/com/qf/myafterprojecy/controller/HelpController.java +++ b/src/main/java/com/qf/myafterprojecy/controller/HelpController.java @@ -53,8 +53,8 @@ public class HelpController { // 读取文件内容 String markdownContent = new String(FileCopyUtils.copyToByteArray(new FileInputStream(readmeFile)), StandardCharsets.UTF_8); // 将Markdown转换为HTML - // String htmlContent = convertMarkdownToHtml(markdownContent); - return ResponseMessage.success(markdownContent, "获取API文档成功"); + String htmlContent = convertMarkdownToHtml(markdownContent); + return ResponseMessage.success(htmlContent, "获取API文档成功"); } catch (IOException e) { return ResponseMessage.error("读取README_API.md文件失败: " + e.getMessage()); } diff --git a/src/main/java/com/qf/myafterprojecy/controller/MessageController.java b/src/main/java/com/qf/myafterprojecy/controller/MessageController.java index 7a22530..2bbd05b 100644 --- a/src/main/java/com/qf/myafterprojecy/controller/MessageController.java +++ b/src/main/java/com/qf/myafterprojecy/controller/MessageController.java @@ -108,12 +108,11 @@ public class MessageController { logger.info("接收删除消息的请求: {}", id); return messageService.deleteMessage(id); } - //删除所有评论 + //删除所有评论 - 仅管理员可操作 @DeleteMapping("/all") + @PreAuthorize("hasRole('ADMIN')") public ResponseMessage deleteAllMessages() { logger.info("接收删除所有消息的请求"); return messageService.deleteAllMessages(); } - // 新增API端点 - } diff --git a/src/main/java/com/qf/myafterprojecy/controller/NonsenseController.java b/src/main/java/com/qf/myafterprojecy/controller/NonsenseController.java new file mode 100644 index 0000000..3508021 --- /dev/null +++ b/src/main/java/com/qf/myafterprojecy/controller/NonsenseController.java @@ -0,0 +1,87 @@ +package com.qf.myafterprojecy.controller; + +import com.qf.myafterprojecy.config.ResponseMessage; +import com.qf.myafterprojecy.pojo.Nonsense; +import com.qf.myafterprojecy.pojo.dto.NonsenseDto; +import com.qf.myafterprojecy.service.imp.INonsenseService; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +@RestController +@RequestMapping("/api/nonsense") +@Validated +public class NonsenseController { + private static final Logger logger = LoggerFactory.getLogger(NonsenseController.class); + + @Autowired + private INonsenseService nonsenseService; + + /** + * 获取所有随机内容 + * @return 随机内容列表 + */ + @GetMapping("") + public ResponseMessage> getAllNonsense() { + logger.info("请求获取所有随机内容"); + return nonsenseService.getAllNonsense(); + } + + /** + * 根据ID获取随机内容 + * @param id 随机内容ID + * @return 随机内容 + */ + @GetMapping("/{id}") + public ResponseMessage getNonsenseById(@PathVariable("id") Integer id) { + logger.info("请求获取ID为{}的随机内容", id); + return nonsenseService.getNonsenseById(id); + } + + /** + * 创建随机内容 + * 需要管理员权限 + * @param nonsenseDto 随机内容数据 + * @return 创建结果 + */ + @PostMapping("") + @PreAuthorize("hasRole('ADMIN')") + public ResponseMessage saveNonsense(@Valid @RequestBody NonsenseDto nonsenseDto) { + logger.info("请求保存随机内容"); + return nonsenseService.saveNonsense(nonsenseDto); + } + + /** + * 更新随机内容 + * 需要管理员权限 + * @param id 随机内容ID + * @param nonsenseDto 随机内容数据 + * @return 更新结果 + */ + @PutMapping("/{id}") + @PreAuthorize("hasRole('ADMIN')") + public ResponseMessage updateNonsense(@PathVariable("id") Integer id, @Valid @RequestBody NonsenseDto nonsenseDto) { + logger.info("请求更新ID为{}的随机内容", id); + return nonsenseService.updateNonsense(id, nonsenseDto); + } + + /** + * 删除随机内容 + * 需要管理员权限 + * @param id 随机内容ID + * @return 删除结果 + */ + @DeleteMapping("/{id}") + @PreAuthorize("hasRole('ADMIN')") + public ResponseMessage deleteNonsense(@PathVariable("id") Integer id) { + logger.info("请求删除ID为{}的随机内容", id); + return nonsenseService.deleteNonsense(id); + } +} \ No newline at end of file diff --git a/src/main/java/com/qf/myafterprojecy/pojo/Article.java b/src/main/java/com/qf/myafterprojecy/pojo/Article.java index 55c9814..9ce86cf 100644 --- a/src/main/java/com/qf/myafterprojecy/pojo/Article.java +++ b/src/main/java/com/qf/myafterprojecy/pojo/Article.java @@ -17,7 +17,6 @@ public class Article { @Column(name = "title") private String title; - @NotBlank(message = "内容不能为空") @Column(name = "content", columnDefinition = "TEXT") private String content; @@ -44,7 +43,6 @@ public class Article { private Integer status; // 0-草稿,1-已发布,2-已删除 @Column(name = "markdownscontent") - @NotBlank(message = "Markdown内容不能为空") private String markdownscontent; // Getters and Setters diff --git a/src/main/java/com/qf/myafterprojecy/pojo/Message.java b/src/main/java/com/qf/myafterprojecy/pojo/Message.java index c2a16b1..7c3b166 100644 --- a/src/main/java/com/qf/myafterprojecy/pojo/Message.java +++ b/src/main/java/com/qf/myafterprojecy/pojo/Message.java @@ -8,7 +8,6 @@ import java.util.Date; public class Message { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "messageid") private Integer messageid; @@ -21,6 +20,9 @@ public class Message { @Column(name = "content", columnDefinition = "text") private String content; + @Column(name = "messageimg") + private String messageimg; + @Temporal(TemporalType.TIMESTAMP) @Column(name = "created_at") private Date createdAt; @@ -37,6 +39,7 @@ public class Message { @Column(name = "likes") private Integer likes; // 点赞数 + public Integer getLikes() { return likes; } @@ -108,4 +111,12 @@ public class Message { public void setArticleid(Integer articleid) { this.articleid = articleid; } + + public String getMessageimg() { + return messageimg; + } + + public void setMessageimg(String messageimg) { + this.messageimg = messageimg; + } } diff --git a/src/main/java/com/qf/myafterprojecy/pojo/Nonsense.java b/src/main/java/com/qf/myafterprojecy/pojo/Nonsense.java new file mode 100644 index 0000000..bd47443 --- /dev/null +++ b/src/main/java/com/qf/myafterprojecy/pojo/Nonsense.java @@ -0,0 +1,38 @@ +package com.qf.myafterprojecy.pojo; + +import javax.persistence.*; +import java.util.Date; + +@Entity +@Table(name = "nonsense") +public class Nonsense { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "id", nullable = false, unique = true) + private Integer id; + + @Column(name = "content",nullable = false) + private String content; + + @Column(name = "time") + private Date time; + public Integer getId() { + return id; + } + public void setId(Integer id) { + this.id = id; + } + public String getContent() { + return content; + } + public void setContent(String content) { + this.content = content; + } + public Date getTime() { + return time; + } + public void setTime(Date time) { + this.time = time; + } + +} \ No newline at end of file diff --git a/src/main/java/com/qf/myafterprojecy/pojo/dto/MessageDto.java b/src/main/java/com/qf/myafterprojecy/pojo/dto/MessageDto.java index 0c9ed4a..f0f2521 100644 --- a/src/main/java/com/qf/myafterprojecy/pojo/dto/MessageDto.java +++ b/src/main/java/com/qf/myafterprojecy/pojo/dto/MessageDto.java @@ -20,6 +20,8 @@ public class MessageDto { private Integer articleid; private Integer likes; + + private String messageimg; public Integer getReplyid() { return replyid; @@ -92,4 +94,12 @@ public class MessageDto { public void setLikes(Integer likes) { this.likes = likes; } + + public String getMessageimg() { + return messageimg; + } + + public void setMessageimg(String messageimg) { + this.messageimg = messageimg; + } } diff --git a/src/main/java/com/qf/myafterprojecy/pojo/dto/NonsenseDto.java b/src/main/java/com/qf/myafterprojecy/pojo/dto/NonsenseDto.java new file mode 100644 index 0000000..09b4cef --- /dev/null +++ b/src/main/java/com/qf/myafterprojecy/pojo/dto/NonsenseDto.java @@ -0,0 +1,36 @@ +package com.qf.myafterprojecy.pojo.dto; + +import java.util.Date; + +public class NonsenseDto { + private Integer id; + + private String content; + + private Date time; + + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + + public Date getTime() { + return time; + } + + public void setTime(Date time) { + this.time = time; + } +} \ No newline at end of file diff --git a/src/main/java/com/qf/myafterprojecy/repository/ArticleRepository.java b/src/main/java/com/qf/myafterprojecy/repository/ArticleRepository.java index 6832e73..883ae25 100644 --- a/src/main/java/com/qf/myafterprojecy/repository/ArticleRepository.java +++ b/src/main/java/com/qf/myafterprojecy/repository/ArticleRepository.java @@ -79,6 +79,7 @@ public interface ArticleRepository extends JpaRepository { */ @Query("SELECT a FROM Article a WHERE a.status = 1 ORDER BY a.viewCount DESC") List
findMostViewed(); + /** * 根据状态查询文章列表 * @param status 文章状态,0-草稿,1-已发布,2-已删除 diff --git a/src/main/java/com/qf/myafterprojecy/repository/NonsenseRepository.java b/src/main/java/com/qf/myafterprojecy/repository/NonsenseRepository.java new file mode 100644 index 0000000..ce730d6 --- /dev/null +++ b/src/main/java/com/qf/myafterprojecy/repository/NonsenseRepository.java @@ -0,0 +1,9 @@ +package com.qf.myafterprojecy.repository; + +import com.qf.myafterprojecy.pojo.Nonsense; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface NonsenseRepository extends JpaRepository { +} \ No newline at end of file diff --git a/src/main/java/com/qf/myafterprojecy/service/CategoryAttributeService.java b/src/main/java/com/qf/myafterprojecy/service/CategoryAttributeService.java index 7843ec4..6563f5c 100644 --- a/src/main/java/com/qf/myafterprojecy/service/CategoryAttributeService.java +++ b/src/main/java/com/qf/myafterprojecy/service/CategoryAttributeService.java @@ -24,6 +24,27 @@ public class CategoryAttributeService implements ICategoryAttributeService { @Autowired private CategoryAttributeRepository categoryAttributeRepository; + /** + * 获取全部分类属性 + * @return 所有分类属性列表 + */ + @Override + @Transactional(readOnly = true) + public ResponseMessage> getAllCategoryAttributes() { + try { + List attributes = categoryAttributeRepository.findAll(); + return ResponseMessage.success(attributes, "获取所有分类属性成功"); + } catch (DataAccessException e) { + log.error("获取所有分类属性失败: {}", e.getMessage()); + return ResponseMessage.error("获取所有分类属性失败"); + } + } + + /** + * 根据ID获取分类属性 + * @param id 属性ID + * @return 分类属性信息 + */ @Override @Transactional(readOnly = true) public ResponseMessage getCategoryAttributeById(Integer id) { @@ -48,6 +69,11 @@ public class CategoryAttributeService implements ICategoryAttributeService { } } + /** + * 根据分类ID获取属性列表 + * @param categoryId 分类ID + * @return 属性列表 + */ @Override @Transactional(readOnly = true) public ResponseMessage> getAttributesByCategoryId(Integer categoryId) { @@ -64,6 +90,11 @@ public class CategoryAttributeService implements ICategoryAttributeService { } } + /** + * 保存分类属性 + * @param dto 分类属性DTO + * @return 保存结果 + */ @Override @Transactional(rollbackFor = Exception.class) public ResponseMessage saveCategoryAttribute(CategoryAttributeDto dto) { @@ -88,6 +119,12 @@ public class CategoryAttributeService implements ICategoryAttributeService { } } + /** + * 更新分类属性 + * @param id 属性ID + * @param dto 分类属性DTO + * @return 更新结果 + */ @Override @Transactional(rollbackFor = Exception.class) public ResponseMessage updateCategoryAttribute(Integer id, CategoryAttributeDto dto) { @@ -126,6 +163,11 @@ public class CategoryAttributeService implements ICategoryAttributeService { } } + /** + * 删除分类属性 + * @param id 属性ID + * @return 删除结果 + */ @Override @Transactional(rollbackFor = Exception.class) public ResponseMessage deleteCategoryAttribute(Integer id) { @@ -147,7 +189,12 @@ public class CategoryAttributeService implements ICategoryAttributeService { return ResponseMessage.error("删除分类属性失败"); } } - + /** + * 检查分类属性是否存在 + * @param categoryId 分类ID + * @param attributeName 属性名称 + * @return 是否存在 + */ @Override @Transactional(readOnly = true) public ResponseMessage existsByCategoryAndName(Integer categoryId, String attributeName) { diff --git a/src/main/java/com/qf/myafterprojecy/service/NonsenseService.java b/src/main/java/com/qf/myafterprojecy/service/NonsenseService.java new file mode 100644 index 0000000..14adad0 --- /dev/null +++ b/src/main/java/com/qf/myafterprojecy/service/NonsenseService.java @@ -0,0 +1,132 @@ +package com.qf.myafterprojecy.service; + +import com.qf.myafterprojecy.config.ResponseMessage; +import com.qf.myafterprojecy.pojo.Nonsense; +import com.qf.myafterprojecy.pojo.dto.NonsenseDto; +import com.qf.myafterprojecy.repository.NonsenseRepository; +import com.qf.myafterprojecy.service.imp.INonsenseService; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DataAccessException; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.List; +import java.util.Optional; + +@Service +public class NonsenseService implements INonsenseService { + private static final Logger logger = LoggerFactory.getLogger(NonsenseService.class); + + @Autowired + private NonsenseRepository nonsenseRepository; + + @Override + public ResponseMessage> getAllNonsense() { + try { + List nonsenseList = nonsenseRepository.findAll(); + logger.info("获取所有随机内容成功,共{}条数据", nonsenseList.size()); + return new ResponseMessage<>(200, "获取成功", nonsenseList, true); + } catch (DataAccessException e) { + logger.error("获取所有随机内容失败", e); + return new ResponseMessage<>(500, "数据库查询异常", null, false); + } catch (Exception e) { + logger.error("获取所有随机内容失败", e); + return new ResponseMessage<>(500, "服务器内部错误", null, false); + } + } + + @Override + public ResponseMessage getNonsenseById(Integer id) { + try { + Optional nonsenseOptional = nonsenseRepository.findById(id); + if (nonsenseOptional.isPresent()) { + logger.info("获取ID为{}的随机内容成功", id); + return new ResponseMessage<>(200, "获取成功", nonsenseOptional.get(), true); + } else { + logger.warn("未找到ID为{}的随机内容", id); + return new ResponseMessage<>(404, "未找到指定随机内容", null, false); + } + } catch (DataAccessException e) { + logger.error("根据ID查询随机内容失败,ID: {}", id, e); + return new ResponseMessage<>(500, "数据库查询异常", null, false); + } catch (Exception e) { + logger.error("根据ID查询随机内容失败,ID: {}", id, e); + return new ResponseMessage<>(500, "服务器内部错误", null, false); + } + } + + @Override + @Transactional + public ResponseMessage saveNonsense(NonsenseDto nonsenseDto) { + try { + Nonsense nonsense = new Nonsense(); + BeanUtils.copyProperties(nonsenseDto, nonsense); + + // 设置创建时间 + if (nonsense.getTime() == null) { + nonsense.setTime(new Date()); + } + + Nonsense savedNonsense = nonsenseRepository.save(nonsense); + logger.info("保存随机内容成功,ID: {}", savedNonsense.getId()); + return new ResponseMessage<>(200, "保存成功", savedNonsense, true); + } catch (DataAccessException e) { + logger.error("保存随机内容失败", e); + return new ResponseMessage<>(500, "数据库操作异常", null, false); + } catch (Exception e) { + logger.error("保存随机内容失败", e); + return new ResponseMessage<>(500, "服务器内部错误", null, false); + } + } + + @Override + @Transactional + public ResponseMessage updateNonsense(Integer id, NonsenseDto nonsenseDto) { + try { + Optional nonsenseOptional = nonsenseRepository.findById(id); + if (nonsenseOptional.isPresent()) { + Nonsense nonsense = nonsenseOptional.get(); + BeanUtils.copyProperties(nonsenseDto, nonsense, "id"); + + Nonsense updatedNonsense = nonsenseRepository.save(nonsense); + logger.info("更新随机内容成功,ID: {}", id); + return new ResponseMessage<>(200, "更新成功", updatedNonsense, true); + } else { + logger.warn("更新失败,未找到ID为{}的随机内容", id); + return new ResponseMessage<>(404, "未找到指定随机内容", null, false); + } + } catch (DataAccessException e) { + logger.error("更新随机内容失败,ID: {}", id, e); + return new ResponseMessage<>(500, "数据库操作异常", null, false); + } catch (Exception e) { + logger.error("更新随机内容失败,ID: {}", id, e); + return new ResponseMessage<>(500, "服务器内部错误", null, false); + } + } + + @Override + @Transactional + public ResponseMessage deleteNonsense(Integer id) { + try { + if (nonsenseRepository.existsById(id)) { + nonsenseRepository.deleteById(id); + logger.info("删除随机内容成功,ID: {}", id); + return new ResponseMessage<>(200, "删除成功", true, true); + } else { + logger.warn("删除失败,未找到ID为{}的随机内容", id); + return new ResponseMessage<>(404, "未找到指定随机内容", false, false); + } + } catch (DataAccessException e) { + logger.error("删除随机内容失败,ID: {}", id, e); + return new ResponseMessage<>(500, "数据库操作异常", false, false); + } catch (Exception e) { + logger.error("删除随机内容失败,ID: {}", id, e); + return new ResponseMessage<>(500, "服务器内部错误", false, false); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/qf/myafterprojecy/service/imp/ICategoryAttributeService.java b/src/main/java/com/qf/myafterprojecy/service/imp/ICategoryAttributeService.java index 09914a8..d1a472b 100644 --- a/src/main/java/com/qf/myafterprojecy/service/imp/ICategoryAttributeService.java +++ b/src/main/java/com/qf/myafterprojecy/service/imp/ICategoryAttributeService.java @@ -7,6 +7,11 @@ import com.qf.myafterprojecy.pojo.dto.CategoryAttributeDto; import java.util.List; public interface ICategoryAttributeService { + /** + * 获取全部分类属性 + * @return 所有分类属性列表 + */ + ResponseMessage> getAllCategoryAttributes(); /** * 根据ID获取分类属性 diff --git a/src/main/java/com/qf/myafterprojecy/service/imp/INonsenseService.java b/src/main/java/com/qf/myafterprojecy/service/imp/INonsenseService.java new file mode 100644 index 0000000..6945857 --- /dev/null +++ b/src/main/java/com/qf/myafterprojecy/service/imp/INonsenseService.java @@ -0,0 +1,44 @@ +package com.qf.myafterprojecy.service.imp; + +import com.qf.myafterprojecy.config.ResponseMessage; +import com.qf.myafterprojecy.pojo.Nonsense; +import com.qf.myafterprojecy.pojo.dto.NonsenseDto; + +import java.util.List; + +public interface INonsenseService { + /** + * 获取所有随机内容 + * @return 随机内容列表 + */ + ResponseMessage> getAllNonsense(); + + /** + * 根据ID获取随机内容 + * @param id 随机内容ID + * @return 随机内容 + */ + ResponseMessage getNonsenseById(Integer id); + + /** + * 保存随机内容 + * @param nonsenseDto 随机内容数据传输对象 + * @return 保存结果 + */ + ResponseMessage saveNonsense(NonsenseDto nonsenseDto); + + /** + * 更新随机内容 + * @param id 随机内容ID + * @param nonsenseDto 随机内容数据传输对象 + * @return 更新结果 + */ + ResponseMessage updateNonsense(Integer id, NonsenseDto nonsenseDto); + + /** + * 删除随机内容 + * @param id 随机内容ID + * @return 删除结果 + */ + ResponseMessage deleteNonsense(Integer id); +} \ No newline at end of file