From eb1f70d431b58d5bf4b00c7517c2c2f632e37453 Mon Sep 17 00:00:00 2001 From: qingfeng1121 Date: Fri, 14 Nov 2025 15:30:39 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E6=96=87=E7=AB=A0):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E7=8A=B6=E6=80=81=E5=88=86=E9=A1=B5=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=96=87=E7=AB=A0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 实现文章列表的分页查询功能,包括: - 在ArticleRepository添加分页查询方法 - 在IArticleService和ArticleService添加分页接口和实现 - 新增PageDto用于分页参数校验 - 在ArticleController添加分页接口 --- logs/web_project.log | 20769 +++++----------- logs/web_project.log.2025-11-03.0.gz | Bin 73419 -> 0 bytes logs/web_project.log.2025-11-04.0.gz | Bin 64990 -> 0 bytes logs/web_project.log.2025-11-05.0.gz | Bin 121723 -> 0 bytes logs/web_project.log.2025-11-06.0.gz | Bin 110420 -> 0 bytes logs/web_project.log.2025-11-09.0.gz | Bin 0 -> 28700 bytes logs/web_project.log.2025-11-10.0.gz | Bin 0 -> 36240 bytes logs/web_project.log.2025-11-12.0.gz | Bin 0 -> 38295 bytes logs/web_project.log.2025-11-13.0.gz | Bin 0 -> 39275 bytes .../controller/ArticleController.java | 15 + .../qf/myafterprojecy/pojo/dto/PageDto.java | 42 + .../repository/ArticleRepository.java | 11 + .../service/ArticleService.java | 28 + .../service/imp/IArticleService.java | 10 + 14 files changed, 5649 insertions(+), 15226 deletions(-) delete mode 100644 logs/web_project.log.2025-11-03.0.gz delete mode 100644 logs/web_project.log.2025-11-04.0.gz delete mode 100644 logs/web_project.log.2025-11-05.0.gz delete mode 100644 logs/web_project.log.2025-11-06.0.gz create mode 100644 logs/web_project.log.2025-11-09.0.gz create mode 100644 logs/web_project.log.2025-11-10.0.gz create mode 100644 logs/web_project.log.2025-11-12.0.gz create mode 100644 logs/web_project.log.2025-11-13.0.gz create mode 100644 src/main/java/com/qf/myafterprojecy/pojo/dto/PageDto.java diff --git a/logs/web_project.log b/logs/web_project.log index 0783744..835315a 100644 --- a/logs/web_project.log +++ b/logs/web_project.log @@ -1,15226 +1,5543 @@ -2025-11-09 00:23:22 [WebProjectHikariCP housekeeper] WARN com.zaxxer.hikari.pool.HikariPool - WebProjectHikariCP - Thread starvation or clock leap detected (housekeeper delta=10m26s690ms275µs500ns). -2025-11-09 13:40:19 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 16016 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) -2025-11-09 13:40:19 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 -2025-11-09 13:40:19 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" -2025-11-09 13:40:19 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor - Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable -2025-11-09 13:40:19 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor - For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG' -2025-11-09 13:40:20 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-11-09 13:40:20 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 63 ms. Found 6 JPA repository interfaces. -2025-11-09 13:40:20 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. -2025-11-09 13:40:21 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) -2025-11-09 13:40:21 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2025-11-09 13:40:21 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] -2025-11-09 13:40:21 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2025-11-09 13:40:21 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 1486 ms -2025-11-09 13:40:21 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-11-09 13:40:21 [restartedMain] INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 5.6.12.Final -2025-11-09 13:40:21 [restartedMain] INFO o.h.annotations.common.Version - HCANN000001: Hibernate Commons Annotations {5.1.2.Final} -2025-11-09 13:40:21 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... -2025-11-09 13:40:21 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. -2025-11-09 13:40:21 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect -2025-11-09 13:40:22 [restartedMain] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform] -2025-11-09 13:40:22 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2025-11-09 13:40:23 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use -2025-11-09 13:40:23 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@62c954c7, org.springframework.security.web.context.SecurityContextPersistenceFilter@76ab7332, org.springframework.security.web.header.HeaderWriterFilter@325538c9, org.springframework.web.filter.CorsFilter@255f9df, org.springframework.security.web.authentication.logout.LogoutFilter@1f062011, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1005/0x000001b6808da428@5f5f916e, com.qf.myafterprojecy.config.JwtAuthenticationFilter@52efa43d, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@6916d722, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@a24c8c7, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@2a3c3192, org.springframework.security.web.session.SessionManagementFilter@2a0bdc66, org.springframework.security.web.access.ExceptionTranslationFilter@2dbdeacb, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@a7ffd3a] -2025-11-09 13:40:23 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2025-11-09 13:40:23 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 -2025-11-09 13:40:23 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' -2025-11-09 13:40:24 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 4.58 seconds (JVM running for 5.557) -2025-11-09 14:53:15 [WebProjectHikariCP housekeeper] WARN com.zaxxer.hikari.pool.HikariPool - WebProjectHikariCP - Thread starvation or clock leap detected (housekeeper delta=42m53s484ms902µs200ns). -2025-11-09 14:53:45 [http-nio-8080-exec-7] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2025-11-09 14:53:45 [http-nio-8080-exec-7] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2025-11-09 14:53:45 [http-nio-8080-exec-7] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 2 ms -2025-11-09 14:53:45 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725360 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725360 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725360 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 14:53:45 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 14:53:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 14:53:45 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725516 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 14:53:45 [http-nio-8080-exec-8] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725530 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725530 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725531 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725530 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725530 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725541 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 14:53:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 14:53:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 14:53:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 14:53:45 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 14:53:45 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 14:53:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 14:53:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 14:53:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 14:53:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 14:53:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 14:53:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 14:53:45 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725568 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725568 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725568 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 14:53:45 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 14:53:45 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 14:53:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 14:53:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 14:53:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 14:53:45 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725588 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725589 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:45Z, a difference of 79725589 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 14:53:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 14:53:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 14:53:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 14:53:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 14:53:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 14:53:55 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:53:55Z, a difference of 79735395 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:53:55 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 14:58:22 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T14:58:22Z, a difference of 80002935 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 14:58:22 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:00:02 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:02Z, a difference of 80102166 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:02 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:00:06 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106129 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106129 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106129 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:00:06 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:00:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:00:06 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106160 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:00:06 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106544 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106544 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106550 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:00:06 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106553 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:00:06 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106553 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106553 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:00:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:00:06 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:00:06 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:00:06 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:00:06 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:00:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:00:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:00:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:00:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:00:06 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106581 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106581 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106586 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:00:06 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:00:06 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:00:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:00:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:00:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:00:06 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106605 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106605 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:06Z, a difference of 80106605 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:00:06 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:00:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:00:06 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:00:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:00:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:00:08 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:08Z, a difference of 80108419 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:08 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:00:56 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:00:56Z, a difference of 80156240 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:00:56 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:01:48 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208302 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208302 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:01:48 [http-nio-8080-exec-11] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:01:48 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208302 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:01:48 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208326 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:01:48 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208636 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208636 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:01:48 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208642 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208643 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208636 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:01:48 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208642 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:01:48 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:01:48 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:01:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:01:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:01:48 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:01:48 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:01:48 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:01:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:01:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:01:48 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208688 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208685 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208686 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:01:48 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:01:48 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:01:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:01:48 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:01:48 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:01:48 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208726 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208726 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:01:48 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:01:48Z, a difference of 80208726 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:01:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:01:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:01:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:01:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:01:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:02:57 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:02:57Z, a difference of 80277048 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:02:57 [http-nio-8080-exec-11] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:04:10 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350522 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350523 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:04:10 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350522 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:04:10 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:04:10 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350559 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:04:10 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350568 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350570 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:04:10 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350572 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350572 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350578 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:04:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:04:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:04:10 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:04:10 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350582 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:04:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:04:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:04:10 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:04:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:04:10 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:04:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:04:10 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350808 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350808 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:04:10 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:10Z, a difference of 80350808 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:10 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:04:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:04:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:04:10 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:04:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:04:11 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:11Z, a difference of 80351078 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:04:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:04:11 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:11Z, a difference of 80351088 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:11 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:11Z, a difference of 80351093 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:04:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:04:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:04:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:04:13 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:04:13Z, a difference of 80353690 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:04:13 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:06:58 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518925 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:58 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518925 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:58 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:06:58 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518925 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:58 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:06:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:06:58 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518945 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:58 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:06:58 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518960 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:58 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518960 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:58 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518960 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:58 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518967 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:58 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:06:58 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:06:58 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518976 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:58 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:06:58 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518976 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:58 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:06:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:06:58 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:06:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:06:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:06:58 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:06:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:06:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:06:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:06:59 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518997 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:59 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518997 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:59 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:58Z, a difference of 80518997 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:59 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:06:59 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:06:59 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:06:59 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:06:59 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:06:59 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:06:59 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:59Z, a difference of 80519021 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:59 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:59Z, a difference of 80519022 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:59 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:06:59Z, a difference of 80519024 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:06:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:06:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:06:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:06:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:06:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:06:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:08:39 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619330 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619330 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619330 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:08:39 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:08:39 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:08:39 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619349 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:08:39 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619547 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619547 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619547 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619551 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:08:39 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619551 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619552 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:08:39 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:08:39 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:08:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:08:39 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:08:39 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:08:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:08:39 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:08:39 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:08:39 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:08:39 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:08:39 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619579 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619578 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619581 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:08:39 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:08:39 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:08:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:08:39 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:08:39 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:08:39 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619773 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619773 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:08:39Z, a difference of 80619773 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:08:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:08:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:08:39 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:08:39 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:08:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:08:39 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:10:01 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701825 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701825 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:10:01 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701825 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:10:01 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:10:01 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701847 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:10:01 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701862 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701862 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:10:01 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701865 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701862 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701869 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701864 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:10:01 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:10:01 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:10:01 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:10:01 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:10:01 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:10:01 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:10:01 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:10:01 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:10:01 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:10:01 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:10:01 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701895 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701894 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:10:01 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:01Z, a difference of 80701901 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:01 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:10:01 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:10:01 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:10:01 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:10:01 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:10:02 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:02Z, a difference of 80702413 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:02 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:02Z, a difference of 80702413 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:02 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:02Z, a difference of 80702413 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:02 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:10:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:10:02 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:10:02 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:10:02 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:10:02 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:10:04 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:10:04Z, a difference of 80704870 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:10:04 [http-nio-8080-exec-11] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:12:03 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:12:03Z, a difference of 80823753 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:12:03 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:14:43 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:43Z, a difference of 80983532 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:43 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:43Z, a difference of 80983532 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:43 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:43Z, a difference of 80983532 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:43 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:14:43 [http-nio-8080-exec-11] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:14:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:14:43 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:43Z, a difference of 80983559 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:43 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:14:43 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:43Z, a difference of 80983577 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:43 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:43Z, a difference of 80983577 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:43 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:43Z, a difference of 80983579 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:43 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:43Z, a difference of 80983578 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:14:43 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:43Z, a difference of 80983585 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:43 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:43Z, a difference of 80983585 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:14:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:14:43 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:14:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:14:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:14:43 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:14:43 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:14:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:14:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:14:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:14:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:14:44 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:44Z, a difference of 80984180 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:44 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:44Z, a difference of 80984180 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:44 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:44Z, a difference of 80984180 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:44 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:14:44 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:14:44 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:14:44 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:14:44 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:14:44 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:14:44 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:44Z, a difference of 80984262 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:44 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:44Z, a difference of 80984262 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:44 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:14:44Z, a difference of 80984262 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:14:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:14:44 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:14:44 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:14:44 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:14:44 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:14:44 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:15:40 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040677 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040680 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040688 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:15:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:15:40 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:15:40 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040718 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:15:40 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040822 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040821 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040826 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040826 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:15:40 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040829 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:15:40 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:15:40 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:15:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:15:40 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040826 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:15:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:15:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:15:40 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:15:40 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:15:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:15:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:15:40 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040859 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040859 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:40Z, a difference of 81040860 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:40 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:15:40 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:15:40 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:15:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:15:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:15:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:15:41 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:41Z, a difference of 81041076 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:41 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:41Z, a difference of 81041076 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:41 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:15:41Z, a difference of 81041076 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:15:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:15:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:15:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:15:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:15:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:15:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:13 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073631 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:13 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073633 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:13 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:13 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073633 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:13 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:16:13 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:16:13 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073654 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:13 [http-nio-8080-exec-11] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:16:13 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073948 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:13 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073944 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:13 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:16:13 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073971 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:13 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:16:13 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073967 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:13 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:13 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073971 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:13 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073971 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:13 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:13 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:13 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:13 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:16:13 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:13 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:13 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:13 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:13 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:13 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:13Z, a difference of 81073997 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:14 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:16:14 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:14Z, a difference of 81074002 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:14 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:14 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:14Z, a difference of 81074003 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:14 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:16:14 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:14 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:16:14 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:14 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:14Z, a difference of 81074086 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:14 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:14Z, a difference of 81074087 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:14 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:14Z, a difference of 81074088 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:14 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:14 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:14 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:14 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:31 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091514 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091514 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091514 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:16:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:31 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:16:31 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091538 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:16:31 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091569 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091572 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091577 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:16:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:31 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091581 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091582 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091585 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:31 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:16:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:31 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:16:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:31 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:31 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091614 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091619 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-9] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:31Z, a difference of 81091619 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:31 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:16:31 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:16:31 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:16:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:32 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:32Z, a difference of 81092015 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:32 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:32Z, a difference of 81092015 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:32 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:16:32Z, a difference of 81092015 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:16:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:16:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:16:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:16:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:27:21 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:27:21Z, a difference of 81741752 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:27:21 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:27:44 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:27:44Z, a difference of 81764225 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:27:44 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:29:41 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:29:41Z, a difference of 81881587 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:29:41 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:29:45 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:29:45Z, a difference of 81885175 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:29:51 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:29:51Z, a difference of 81891201 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:23 [http-nio-8080-exec-6] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:31:23Z, a difference of 81983555 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:23 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:31:23Z, a difference of 81983555 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:23 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:31:23 [http-nio-8080-exec-10] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:31:23Z, a difference of 81983555 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:23 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:23 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:31:23 [http-nio-8080-exec-5] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:31:23Z, a difference of 81983591 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:23 [http-nio-8080-exec-1] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:31:23Z, a difference of 81983591 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:23 [http-nio-8080-exec-11] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:31:23Z, a difference of 81983590 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:23 [http-nio-8080-exec-2] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:31:23Z, a difference of 81983592 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:23 [http-nio-8080-exec-3] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:31:23Z, a difference of 81983593 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:23 [http-nio-8080-exec-7] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:31:23Z, a difference of 81983592 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:23 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:31:23 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:31:23 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:31:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:23 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:23 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:31:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:31:23 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:31:31 [http-nio-8080-exec-4] ERROR c.q.m.config.JwtAuthenticationFilter - 无效的token: {} -io.jsonwebtoken.ExpiredJwtException: JWT expired at 2025-11-08T16:45:00Z. Current time: 2025-11-09T15:31:31Z, a difference of 81991697 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:88) - 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$1(SecurityConfig.java:119) - 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.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) - 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-09 15:31:31 [http-nio-8080-exec-4] INFO c.q.m.controller.AuthController - 用户登录请求: 123456 -2025-11-09 15:31:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:31 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 1 -2025-11-09 15:31:31 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 1 -2025-11-09 15:31:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:31 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:31 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:31 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:31 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:31 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 15:31:32 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 2 -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 2 -2025-11-09 15:31:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:32 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 15:31:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:32 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-09 15:31:32 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-09 15:31:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:31:32 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 15:31:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:32 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-09 15:31:32 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-09 15:31:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:31:32 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 15:31:32 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-09 15:31:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 15:31:32 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 15:31:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:32 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 6 -2025-11-09 15:31:32 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 6 -2025-11-09 15:31:32 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [6] -2025-11-09 15:31:32 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 15:31:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:32 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 -2025-11-09 15:31:32 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 -2025-11-09 15:31:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] -2025-11-09 15:31:32 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 15:31:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:32 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 8 -2025-11-09 15:31:32 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 8 -2025-11-09 15:31:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [8] -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:32 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 15:31:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:31:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:31:34 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:31:34 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:31:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:31:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:31:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:31:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:31:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:36 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:36 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:36 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:36 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:36 [http-nio-8080-exec-11] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:31:41 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:41 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:31:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:31:41 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收创建分类属性的请求: 分类ID=1, 属性名称=1111 -2025-11-09 15:31:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:31:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [2] as [VARCHAR] - [1111] -2025-11-09 15:31:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [1111] -2025-11-09 15:31:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [2] as [INTEGER] - [1] -2025-11-09 15:31:41 [http-nio-8080-exec-3] INFO c.q.m.s.CategoryAttributeService - 成功创建分类属性: 1111, 分类ID: 1 -2025-11-09 15:33:43 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:33:43 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:33:43 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:33:43 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:33:43 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:33:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:33:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:33:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:33:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:33:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:33:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:33:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:33:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:33:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:33:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:34:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:34:30 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:34:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:34:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:34:30 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:34:30 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:34:30 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:34:30 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:34:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:34:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:34:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:34:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:34:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:34:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:34:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:34:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:34:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:34:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:34:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:34:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:34:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:30 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:34:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:34:30 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:34:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:34:31 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:31 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:31 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:31 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:31 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:34:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:34:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:34:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:34:31 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:34:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:34:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:34:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:34:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:34:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:34:35 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:34:35 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:34:35 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:34:35 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:34:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:34:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:34:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:34:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:34:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:34:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:34:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:34:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:34:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:34:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:34:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:34:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:34:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:36:49 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:36:49 [http-nio-8080-exec-11] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:36:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:36:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:36:49 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:36:49 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:36:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:36:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:36:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:36:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:36:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:36:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:36:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:36:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:36:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:36:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:36:49 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:36:49 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:36:49 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:36:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:36:49 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:36:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:36:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:49 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:36:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:36:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:36:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:36:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:36:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:36:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:36:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:36:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:36:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:36:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:36:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:43:23 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 15:43:23 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:43:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:43:23 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 15:43:23 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:43:23 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:43:23 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:43:23 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:43:23 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:43:23 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:43:23 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:43:23 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:43:23 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:43:23 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:43:23 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:43:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:43:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:43:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:43:23 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 15:43:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:43:23 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 15:43:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:43:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 15:43:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:43:23 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 15:43:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:43:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:43:23 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 15:43:23 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 15:43:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 15:43:23 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:43:23 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 15:43:23 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 15:43:23 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:10:19 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 16:10:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:10:19 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:10:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:10:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:10:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:10:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:10:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 1 -2025-11-09 16:10:19 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 1 -2025-11-09 16:10:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:10:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:10:19 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:10:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 2 -2025-11-09 16:10:19 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 2 -2025-11-09 16:10:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:10:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-09 16:10:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:10:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:10:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-09 16:10:19 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-09 16:10:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:10:19 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:10:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:19 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-09 16:10:19 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-09 16:10:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 16:10:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:10:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 6 -2025-11-09 16:10:19 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 6 -2025-11-09 16:10:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [6] -2025-11-09 16:10:19 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:10:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 -2025-11-09 16:10:19 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 -2025-11-09 16:10:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] -2025-11-09 16:10:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:10:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 8 -2025-11-09 16:10:19 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 8 -2025-11-09 16:10:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [8] -2025-11-09 16:10:20 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:20 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:20 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:20 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:20 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:10:20 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 1 -2025-11-09 16:10:24 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 1 -2025-11-09 16:10:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:10:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 2 -2025-11-09 16:10:24 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 2 -2025-11-09 16:10:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:10:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:24 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-11] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-09 16:10:24 [http-nio-8080-exec-11] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-09 16:10:24 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:10:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:10:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:24 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-09 16:10:24 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-09 16:10:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:10:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:10:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-09 16:10:24 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-09 16:10:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 16:10:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:10:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 6 -2025-11-09 16:10:24 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 6 -2025-11-09 16:10:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [6] -2025-11-09 16:10:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:10:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 -2025-11-09 16:10:24 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 -2025-11-09 16:10:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] -2025-11-09 16:10:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:10:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:24 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-11] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 8 -2025-11-09 16:10:24 [http-nio-8080-exec-11] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 8 -2025-11-09 16:10:24 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [8] -2025-11-09 16:10:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:10:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:24 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:10:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:10:24 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:10:24 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:10:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:10:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:10:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:10:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:10:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:10:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:10:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:10:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:10:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:10:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:11:25 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 16:11:25 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:11:25 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:11:25 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:11:25 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:11:25 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:11:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:11:25 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:11:25 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:11:25 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:11:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:11:25 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:11:25 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:11:25 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:11:25 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:11:25 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:11:25 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:11:25 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:11:25 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:11:25 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:11:25 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:11:25 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:11:25 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:25 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:11:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:11:26 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:26 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:26 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:26 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:26 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:26 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:26 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:26 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:26 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:11:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:26 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:11:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:11:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:11:26 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:11:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:11:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:11:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:11:26 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:11:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:12:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-11] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:12:35 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 16:12:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:12:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:12:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:12:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:12:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:12:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:12:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:12:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:12:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:12:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:12:35 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:12:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:12:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:12:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:12:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:12:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:12:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:12:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:12:35 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:12:35 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:12:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:12:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:12:35 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:12:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:12:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:12:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:12:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:12:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:12:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:12:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:12:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:12:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:14:16 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:16 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:16 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:16 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:16 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:16 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:16 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:16 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:16 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:16 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:16 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:16 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:16 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:14:16 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:16 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 16:14:16 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:16 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:16 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:14:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:14:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:14:17 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:17 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:14:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:17 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:17 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:17 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:14:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:14:17 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:14:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:17 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:14:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:14:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:14:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:14:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:34 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 16:14:34 [http-nio-8080-exec-11] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:14:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:14:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:14:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:14:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:34 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:14:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:14:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:14:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:14:35 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:35 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:14:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:35 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:14:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:14:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:14:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:14:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:14:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:14:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:35 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:14:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:16:41 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:16:41 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 16:16:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:16:41 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:16:41 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:16:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:16:41 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:16:41 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:16:41 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:16:41 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:16:41 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:16:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:16:41 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:16:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:16:41 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:16:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:16:41 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:16:41 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:16:41 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 16:16:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 16:16:41 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:16:41 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:16:41 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:16:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:16:41 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:41 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:41 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:16:41 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:16:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:16:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:16:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:16:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 16:16:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:16:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:16:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:16:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:16:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 16:16:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:16:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:16:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:17:07 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:17:07 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 16:17:07 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:07 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:17:07 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:07 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:07 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:17:07 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:17:07 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:17:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:07 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:17:07 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:08 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:17:08 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:08 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:08 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:17:08 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:17:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:17:08 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:17:08 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:08 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:17:08 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:08 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:08 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:08 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:17:08 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:08 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:17:19 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 1 -2025-11-09 16:17:19 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 1 -2025-11-09 16:17:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:17:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 2 -2025-11-09 16:17:19 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 2 -2025-11-09 16:17:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:17:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-09 16:17:19 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-09 16:17:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:17:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:17:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-09 16:17:19 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-09 16:17:19 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:17:19 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:17:19 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-09 16:17:19 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-09 16:17:19 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 16:17:19 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:17:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:19 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 6 -2025-11-09 16:17:19 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 6 -2025-11-09 16:17:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [6] -2025-11-09 16:17:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:17:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 -2025-11-09 16:17:19 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 -2025-11-09 16:17:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] -2025-11-09 16:17:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:17:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 8 -2025-11-09 16:17:19 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 8 -2025-11-09 16:17:19 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [8] -2025-11-09 16:17:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:19 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:17:19 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:17:22 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:22 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:22 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:22 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:22 [http-nio-8080-exec-11] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 -2025-11-09 16:17:22 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:17:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:17:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:17:45 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 -2025-11-09 16:17:45 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 查询所有消息 -2025-11-09 16:20:44 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:44 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:44 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:44 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 1 -2025-11-09 16:20:45 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 1 -2025-11-09 16:20:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:20:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:20:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:20:45 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 2 -2025-11-09 16:20:45 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 2 -2025-11-09 16:20:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:20:45 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:20:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:20:45 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-09 16:20:45 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-09 16:20:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:20:45 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:20:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:20:45 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-09 16:20:45 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-09 16:20:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:20:45 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:20:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:20:45 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-09 16:20:45 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-09 16:20:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 16:20:45 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:20:45 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:20:45 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 6 -2025-11-09 16:20:45 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 6 -2025-11-09 16:20:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [6] -2025-11-09 16:20:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:20:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:20:45 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 -2025-11-09 16:20:45 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 -2025-11-09 16:20:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] -2025-11-09 16:20:45 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:20:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:20:45 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 8 -2025-11-09 16:20:45 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 8 -2025-11-09 16:20:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [8] -2025-11-09 16:20:45 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:20:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:20:45 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:20:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:21:00 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:00 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [%编辑编辑%] -2025-11-09 16:21:57 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:57 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:57 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:57 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:57 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:57 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:57 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:57 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:57 [http-nio-8080-exec-11] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 1 -2025-11-09 16:21:57 [http-nio-8080-exec-11] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 1 -2025-11-09 16:21:57 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:21:58 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:21:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:21:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 2 -2025-11-09 16:21:58 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 2 -2025-11-09 16:21:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:21:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:21:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:21:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-09 16:21:58 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-09 16:21:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:21:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:21:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:21:58 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-09 16:21:58 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-09 16:21:58 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:21:58 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:21:58 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:21:58 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-09 16:21:58 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-09 16:21:58 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 16:21:58 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:21:58 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:21:58 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-11] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 6 -2025-11-09 16:21:58 [http-nio-8080-exec-11] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 6 -2025-11-09 16:21:58 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [6] -2025-11-09 16:21:58 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:21:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:21:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 -2025-11-09 16:21:58 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 -2025-11-09 16:21:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] -2025-11-09 16:21:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:21:58 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:21:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 8 -2025-11-09 16:21:58 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 8 -2025-11-09 16:21:58 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [8] -2025-11-09 16:21:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:21:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:21:58 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:21:58 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:22:00 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:22:00 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:22:00 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:22:00 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:22:00 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [%编辑%] -2025-11-09 16:22:00 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:22:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:22:00 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:22:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:22:00 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 1 -2025-11-09 16:22:00 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 1 -2025-11-09 16:22:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:22:00 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:22:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:22:00 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:22:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:22:00 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:22:00 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:25:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 -2025-11-09 16:25:30 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 -2025-11-09 16:25:30 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:25:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [%编辑%] -2025-11-09 16:25:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 -2025-11-09 16:25:30 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:25:30 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 -2025-11-09 16:25:30 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 -2025-11-09 16:25:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:25:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:25:30 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:25:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:25:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:25:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:25:30 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:25:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:25:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:31 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 1 -2025-11-09 16:25:31 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 1 -2025-11-09 16:25:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:25:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:31 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:25:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:25:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 1 -2025-11-09 16:25:34 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 1 -2025-11-09 16:25:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:25:34 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:25:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:25:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 2 -2025-11-09 16:25:34 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 2 -2025-11-09 16:25:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:25:34 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:25:34 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:25:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 -2025-11-09 16:25:34 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 -2025-11-09 16:25:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] -2025-11-09 16:25:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:25:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:25:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 -2025-11-09 16:25:34 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 -2025-11-09 16:25:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] -2025-11-09 16:25:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 -2025-11-09 16:25:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] -2025-11-09 16:25:34 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 -2025-11-09 16:25:34 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 -2025-11-09 16:25:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] -2025-11-09 16:25:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:25:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:25:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 6 -2025-11-09 16:25:34 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 6 -2025-11-09 16:25:34 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [6] -2025-11-09 16:25:34 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:25:34 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:25:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 -2025-11-09 16:25:34 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 -2025-11-09 16:25:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] -2025-11-09 16:25:34 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-11] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-11] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:25:34 [http-nio-8080-exec-11] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] -2025-11-09 16:25:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 8 -2025-11-09 16:25:34 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 8 -2025-11-09 16:25:34 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [8] -2025-11-09 16:25:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 -2025-11-09 16:25:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] -2025-11-09 16:25:34 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 -2025-11-09 16:25:34 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:51:47 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Starting MyAfterProjecyApplication using Java 1.8.0_461 on DESKTOP-8G5GS0I with PID 3676 (E:\MyWebProject\MyAfterProjecy\target\classes started by 30803 in E:\MyWebProject\MyAfterProjecy) +2025-11-14 11:51:47 [restartedMain] DEBUG c.q.m.MyAfterProjecyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2025-11-14 11:51:47 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - No active profile set, falling back to 1 default profile: "default" +2025-11-14 11:51:48 [restartedMain] INFO o.s.b.d.e.DevToolsPropertyDefaultsPostProcessor - Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable +2025-11-14 11:51: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-14 11:51:48 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-11-14 11:51:48 [restartedMain] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 64 ms. Found 6 JPA repository interfaces. +2025-11-14 11:51:49 [restartedMain] WARN o.m.s.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.qf.myafterprojecy]' package. Please check your configuration. +2025-11-14 11:51:49 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http) +2025-11-14 11:51:49 [restartedMain] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-11-14 11:51:49 [restartedMain] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2025-11-14 11:51:49 [restartedMain] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-11-14 11:51:49 [restartedMain] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 1685 ms +2025-11-14 11:51:49 [restartedMain] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-11-14 11:51:49 [restartedMain] INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 5.6.12.Final +2025-11-14 11:51:50 [restartedMain] INFO o.h.annotations.common.Version - HCANN000001: Hibernate Commons Annotations {5.1.2.Final} +2025-11-14 11:51:50 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Starting... +2025-11-14 11:51:50 [restartedMain] INFO com.zaxxer.hikari.HikariDataSource - WebProjectHikariCP - Start completed. +2025-11-14 11:51:50 [restartedMain] INFO org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect +2025-11-14 11:51: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-14 11:51:51 [restartedMain] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-11-14 11:51:52 [restartedMain] DEBUG c.q.m.config.JwtAuthenticationFilter - Filter 'jwtAuthenticationFilter' configured for use +2025-11-14 11:51:52 [restartedMain] INFO o.s.s.web.DefaultSecurityFilterChain - Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@5cdf7fa5, org.springframework.security.web.context.SecurityContextPersistenceFilter@751eb41b, org.springframework.security.web.header.HeaderWriterFilter@24f6fad, org.springframework.web.filter.CorsFilter@10d7d934, org.springframework.security.web.authentication.logout.LogoutFilter@1a8a420f, com.qf.myafterprojecy.config.SecurityConfig$$Lambda$1002/0x00000007c08d3828@4d92e71b, com.qf.myafterprojecy.config.JwtAuthenticationFilter@5d2303fe, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@4f7cf5ba, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@34c593df, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@19f0b5e0, org.springframework.security.web.session.SessionManagementFilter@4bc4ab08, org.springframework.security.web.access.ExceptionTranslationFilter@348df6bf, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@e5b5db4] +2025-11-14 11:51:52 [restartedMain] INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] +2025-11-14 11:51:52 [restartedMain] INFO o.s.b.d.a.OptionalLiveReloadServer - LiveReload server is running on port 35729 +2025-11-14 11:51:53 [restartedMain] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path '' +2025-11-14 11:51:53 [restartedMain] INFO c.q.m.MyAfterProjecyApplication - Started MyAfterProjecyApplication in 5.551 seconds (JVM running for 7.086) +2025-11-14 11:52:46 [http-nio-8080-exec-3] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-11-14 11:52:46 [http-nio-8080-exec-3] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' +2025-11-14 11:52:46 [http-nio-8080-exec-3] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 1 ms +2025-11-14 11:52:46 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 11:52:46 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:52:46 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 11:52:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:52:47 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 11:52:47 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 11:52:47 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 11:52:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:52:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:52:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:52:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:52:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:52:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:52:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:52:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:52:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:52:47 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 11:52:47 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 11:52:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:52:47 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:52:47 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:52:47 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 11:52:47 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 11:52:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 11:52:47 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:52:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:52:47 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 11:52:47 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 11:52:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 11:52:47 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:52:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:52:47 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 11:52:47 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 11:52:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 11:52:47 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:52:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:53:26 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 11:53:26 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 11:53:26 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:53:26 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:53:26 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 11:53:26 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 11:53:26 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 11:53:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:53:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:53:26 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:53:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:53:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:53:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:53:26 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:53:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:53:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:53:26 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 11:53:26 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 11:53:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:53:26 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:53:26 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:53:26 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 11:53:26 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 11:53:26 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 11:53:26 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:53:26 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:53:26 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 11:53:26 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 11:53:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 11:53:26 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:53:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:53:26 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 11:53:26 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 11:53:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 11:53:26 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:53:26 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:54:20 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:54:20 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 11:54:20 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 11:54:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:54:21 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 11:54:21 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 11:54:21 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 11:54:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:54:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:54:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:54:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:54:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:54:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:54:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:54:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:54:21 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:54:21 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 11:54:21 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 11:54:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:54:21 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:54:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:54:21 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 11:54:21 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 11:54:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 11:54:21 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:54:21 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:54:21 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 11:54:21 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 11:54:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 11:54:21 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:54:21 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:54:21 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 11:54:21 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 11:54:21 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 11:54:21 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:54:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:57:45 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 11:57:45 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 11:57:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:57:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:57:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:57:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:57:45 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 11:57:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:57:45 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 11:57:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:57:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:57:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:57:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:57:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:57:45 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 11:57:45 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 11:57:45 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 11:57:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:57:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:57:45 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:57:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:57:45 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 11:57:45 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 11:57:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 11:57:45 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:57:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:57:45 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 11:57:45 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 11:57:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 11:57:45 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:57:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:57:45 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 11:57:45 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 11:57:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 11:57:46 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:57:46 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:01 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 11:58:01 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 11:58:01 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:01 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:01 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 11:58:01 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 11:58:01 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 11:58:01 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:01 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:01 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:01 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:01 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:01 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:01 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:01 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:01 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:01 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 11:58:01 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 11:58:01 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:01 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:58:01 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:01 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 11:58:01 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 11:58:01 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 11:58:01 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:58:01 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:01 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 11:58:01 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 11:58:01 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 11:58:01 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:58:01 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:01 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 11:58:01 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 11:58:01 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 11:58:01 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:58:01 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:28 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:28 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 11:58:28 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 11:58:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:28 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 11:58:28 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:28 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 11:58:28 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:28 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:28 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:28 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:28 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 11:58:28 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:28 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:28 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:28 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:28 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 11:58:28 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 11:58:28 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:28 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:58:28 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:28 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 11:58:28 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 11:58:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 11:58:28 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:58:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:28 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 11:58:28 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 11:58:28 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 11:58:28 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:58:28 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:28 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 11:58:28 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 11:58:28 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 11:58:28 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:58:28 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:52 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 11:58:52 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 11:58:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:52 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 11:58:52 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 11:58:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:52 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:52 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 11:58:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:52 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 11:58:52 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 11:58:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 11:58:52 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:58:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:52 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 11:58:52 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 11:58:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 11:58:52 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 11:58:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 11:58:52 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 11:58:52 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 11:58:52 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 11:58:52 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:58:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 11:58:52 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 11:58:52 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 11:58:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 11:58:52 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 11:58:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:00:32 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:00:32 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:00:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:00:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:00:32 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:00:32 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:00:32 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:00:32 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:00:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:00:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:00:32 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:00:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:00:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:00:32 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:00:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:00:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:00:32 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:00:32 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:00:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:00:32 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:00:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:00:32 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:00:32 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:00:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:00:32 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:00:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:00:32 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:00:32 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:00:32 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:00:32 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:00:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:00:32 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:00:32 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:00:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:00:32 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:00:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:01:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:24 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:01:24 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:01:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:24 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:01:24 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:01:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:01:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:24 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:01:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:01:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:01:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:01:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:01:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:01:24 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:01:24 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:01:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:01:24 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:01:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:24 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:01:24 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:01:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:01:24 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:01:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:24 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:01:24 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:01:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:01:24 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:01:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:01:24 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:01:24 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:01:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:01:24 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:01:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:01:31 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:01:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:31 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:01:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:32 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:01:32 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:01:32 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:01:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:01:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:01:32 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:01:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:01:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:32 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:01:32 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:01:32 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:01:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:01:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:01:32 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:01:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:32 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:01:32 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:01:32 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:01:32 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:01:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:01:32 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:01:32 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:01:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:01:32 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:01:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:01:32 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:01:32 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:01:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:01:32 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:01:32 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:38:44 [http-nio-8080-exec-10] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:38:44 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:39:43 [http-nio-8080-exec-1] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:39:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:39:44 [http-nio-8080-exec-4] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:39:44 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:42:38 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:42:38 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:42:38 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:42:38 [http-nio-8080-exec-3] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:42:38 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:42:38 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:42:38 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:42:38 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:42:38 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:42:38 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:42:38 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:42:38 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:42:38 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:42:38 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:42:38 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:42:38 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:42:38 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:42:49 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:42:49 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:42:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:42:49 [http-nio-8080-exec-3] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:42:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:42:49 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:42:49 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:42:49 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:42:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:42:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:42:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:42:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:42:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:42:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:42:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:42:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:42:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:00 [http-nio-8080-exec-7] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:43:00 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:01 [http-nio-8080-exec-6] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:43:01 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:03 [http-nio-8080-exec-9] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:43:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:07 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:43:07 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:43:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:07 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:07 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:08 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:43:08 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:43:08 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:43:08 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:08 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:08 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:43:08 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:43:08 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:43:08 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:43:08 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:08 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:43:08 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:43:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:43:08 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:43:08 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:10 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:43:10 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:43:10 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:43:10 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:43:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:11 [http-nio-8080-exec-1] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:43:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:12 [http-nio-8080-exec-7] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:43:12 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:12 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:43:12 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:43:12 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:43:12 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:43:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:12 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:12 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:12 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:12 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:43:12 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:43:12 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:12 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:12 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:12 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:43:12 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:43:12 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:43:12 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:12 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:12 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:43:12 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:43:12 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:43:12 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:43:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:12 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:43:12 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:43:12 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:43:12 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:43:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:14 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:43:14 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:43:14 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:43:14 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:43:14 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:14 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:14 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:14 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:16 [http-nio-8080-exec-3] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:43:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:18 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:18 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:43:18 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:43:18 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:18 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:18 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:18 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:43:18 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:43:18 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:43:18 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:18 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:18 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:43:18 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:43:18 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:43:18 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:43:18 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:18 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:43:18 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:43:18 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:43:18 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:43:18 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:19 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:43:19 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:43:19 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:43:19 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:43:19 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:19 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:19 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:19 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:19 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:21 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:43:21 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:43:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:21 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:21 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:21 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:43:21 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:43:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:43:21 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:21 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:23 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:43:23 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:43:23 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:43:23 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:43:23 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:23 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:23 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:23 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:23 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:23 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:23 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:25 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:25 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:43:25 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:43:25 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:25 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:25 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:25 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:43:25 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:43:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:43:25 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:25 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:26 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:43:26 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:43:26 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:43:26 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:43:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:26 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:26 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:27 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:43:27 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:43:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:27 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:27 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:43:27 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:43:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:43:27 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:27 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:43:27 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:43:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:43:27 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:43:27 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:27 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:43:27 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:43:27 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:43:27 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:43:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:29 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:43:29 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:43:29 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:43:29 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:43:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:30 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:30 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:43:30 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:43:30 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:30 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:30 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:30 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:43:30 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:43:30 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:43:30 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:43:30 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:30 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:43:30 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:43:30 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:43:30 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:43:30 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:30 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:43:30 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:43:30 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:43:30 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:43:30 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:38 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:43:38 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:43:38 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:43:38 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:43:38 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:38 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:38 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:38 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:38 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:38 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:38 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:43:38 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:43:38 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:43:40 [http-nio-8080-exec-3] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:43:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:44:16 [http-nio-8080-exec-6] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:44:16 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:44:18 [http-nio-8080-exec-1] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:44:18 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:44:20 [http-nio-8080-exec-10] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:44:20 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:44:55 [http-nio-8080-exec-8] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 12:44:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:45:38 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:45:38 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:45:38 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:45:38 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:45:38 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:45:38 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:45:38 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:45:38 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:45:38 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:45:38 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:45:38 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:45:38 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:45:38 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:45:38 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:45:38 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:45:38 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:45:38 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:45:38 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:45:38 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:45:38 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:45:39 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:45:41 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:45:41 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:45:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:45:42 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:45:42 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:45:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:45:42 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:45:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:45:42 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:45:42 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:45:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:45:42 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:45:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:45:42 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:45:42 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:45:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:45:42 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:45:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:45:42 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:45:42 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:45:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:45:42 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:45:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:45:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:45:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:45:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:45:52 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:45:52 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:45:52 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:45:52 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:45:52 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:45:52 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:45:52 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:45:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:45:52 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:45:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:45:52 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:45:52 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:45:52 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:45:52 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:45:52 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:45:52 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:45:52 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:45:52 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:45:52 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:45:52 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:46:17 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:46:17 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:46:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:46:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:46:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:46:17 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:46:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:46:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:46:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:46:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:46:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:46:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:46:17 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:46:17 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:46:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:46:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:46:17 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:46:17 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:46:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:46:17 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:46:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:46:17 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:46:17 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:46:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:46:17 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:46:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:46:17 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:46:17 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:46:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:46:17 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:46:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:46:17 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:46:17 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:46:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:46:17 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:46:17 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:49:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:49:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:50:18 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:50:18 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:50:18 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:50:18 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:50:18 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:50:18 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:50:18 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:50:18 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:50:18 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:50:18 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:50:18 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:50:18 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:50:18 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:50:18 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:50:18 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:50:18 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:50:18 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:50:35 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:50:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:50:35 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:50:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:50:35 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:50:35 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:50:35 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:50:35 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:50:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:50:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:50:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:50:35 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:50:35 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:50:35 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:50:35 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:50:35 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:50:35 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:51:49 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:51:49 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:51:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:51:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:51:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:51:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:51:49 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:51:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:51:49 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:51:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:51:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:51:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:51:49 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:51:49 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:51:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:51:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:51:49 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:26 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:52:26 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:52:26 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:26 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:52:26 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:52:26 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:52:26 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:26 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:26 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:26 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:26 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:26 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:26 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:28 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:52:28 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:52:28 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:28 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:52:28 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:52:28 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:52:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:28 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:28 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:28 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:28 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:28 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:28 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:31 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:52:31 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:52:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:31 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:52:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:31 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:52:31 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:52:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:52:31 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:52:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:31 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:52:31 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:52:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:52:31 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:52:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:31 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:52:31 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:52:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:52:31 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:52:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:35 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:48 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:52:48 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:52:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:48 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:48 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:52:48 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:52:48 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:52:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:48 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:48 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:50 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:52:50 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:52:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:50 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:52:50 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:52:50 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:52:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:55 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:52:55 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:52:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:55 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:52:55 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:52:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:55 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:55 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:52:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:55 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:55 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:58 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 12:52:58 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 12:52:58 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:58 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:59 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 12:52:59 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:59 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 12:52:59 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 12:52:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:59 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:59 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:52:59 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:52:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:52:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:53:00 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:53:00 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 12:53:00 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 12:53:00 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 12:53:00 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:53:00 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:53:00 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 12:53:00 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 12:53:00 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 12:53:00 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 12:53:00 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 12:53:01 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 12:53:01 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 12:53:01 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 12:53:01 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:53:01 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 12:53:01 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 12:53:01 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 12:53:01 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 12:53:01 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 12:53:01 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 13:50:01 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 13:50:01 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 13:50:01 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 13:50:01 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 13:50:01 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 13:50:01 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 13:50:01 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 13:50:01 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 13:50:01 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 13:50:01 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 13:50:01 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 13:50:01 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 13:53:13 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 13:53:13 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 13:53:13 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 13:53:13 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 13:53:13 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 13:53:13 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 13:53:13 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 13:53:13 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 13:53:13 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 13:53:13 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 13:53:13 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 13:53:13 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:04:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:04:55 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:04:55 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:04:55 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:04:55 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:04:55 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:04:55 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:04:55 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:04:55 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:04:55 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:04:55 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:04:55 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:00 [http-nio-8080-exec-6] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/articles/view/undefined,异常消息:Failed to convert value of type 'java.lang.String' to required type 'java.lang.Integer'; nested exception is java.lang.NumberFormatException: For input string: "undefined" +2025-11-14 14:05:00 [http-nio-8080-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'java.lang.Integer'; nested exception is java.lang.NumberFormatException: For input string: "undefined"] +2025-11-14 14:05:00 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:05:00 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:05:00 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:05:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:03 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:05:03 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:05:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:05:03 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:05:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:03 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:05:03 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:05:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:05:03 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:05:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:09 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:05:09 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:05:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:05:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:05:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:05:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:05:09 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:05:09 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:05:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:05:09 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:05:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:05:09 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:05:09 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:05:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:05:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:05:09 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:05:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:09 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:05:09 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:05:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:05:09 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:05:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:32 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:05:32 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:05:32 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:05:32 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:05:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:05:32 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:05:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:05:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:05:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:05:32 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:05:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:05:35 [http-nio-8080-exec-8] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:05:35 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:05:49 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-14 14:05:49 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-14 14:06:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:06:03 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:06:03 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:06:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:06:03 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:06:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:06:03 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:06:03 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:06:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:06:03 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:06:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:06:03 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:06:03 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:06:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:06:03 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:06:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:06:03 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:06:03 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:06:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:06:03 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:06:03 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:27:43 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:27:43 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:27:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:27:43 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:27:43 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:27:43 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:27:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:27:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:27:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:27:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:27:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:27:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:27:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:27:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:27:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:27:48 [http-nio-8080-exec-3] INFO c.q.m.controller.AuthController - 用户登录请求: 123456 +2025-11-14 14:27:48 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:27:49 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:27:49 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:27:49 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:27:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:27:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:27:49 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:27:49 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:27:49 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:27:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:27:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:27:49 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:27:49 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:27:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:27:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:27:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:27:49 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:27:49 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:27:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:27:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:27:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:27:49 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:27:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:28:03 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:28:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:28:03 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:28:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:28:03 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:28:03 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:28:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:03 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:03 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:28:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:03 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:28:03 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:28:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:28:03 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:28:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:28:03 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:28:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:28:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:28:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:28:03 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:28:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:28:03 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:03 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:28:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [0] +2025-11-14 14:28:13 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:13 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 1 +2025-11-14 14:28:13 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 1 +2025-11-14 14:28:13 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:13 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:28:13 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:13 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 2 +2025-11-14 14:28:13 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 2 +2025-11-14 14:28:13 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:13 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:28:13 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:13 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 6 +2025-11-14 14:28:13 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 6 +2025-11-14 14:28:13 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [6] +2025-11-14 14:28:13 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:28:13 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:13 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 8 +2025-11-14 14:28:13 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 8 +2025-11-14 14:28:13 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [8] +2025-11-14 14:28:13 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:13 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:13 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:28:13 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:17 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:28:17 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:28:17 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:17 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:28:17 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:17 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:28:17 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:28:17 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:28:17 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:28:17 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:28:17 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:28:17 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:28:17 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:28:17 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:28:17 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:28:17 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:28:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:17 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:28:17 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:21 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:21 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:21 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:28:21 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:21 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:21 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:21 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:21 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:28:21 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:28:21 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:28:21 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:21 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:21 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:28:42 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:28:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:28:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:28:42 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:28:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:28:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:42 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:28:42 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:28:42 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:28:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:28:54 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:28:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:28:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:28:54 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:28:54 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:28:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:28:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:28:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:28:54 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:28:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:28:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:28:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:28:54 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:28:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:03 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:29:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:03 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:29:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:29:03 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:29:03 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:29:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:03 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:29:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:03 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:03 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:29:03 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:29:03 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:03 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:03 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:03 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:29:03 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:29:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:29:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-5] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:29:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:29:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:29:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:06 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:29:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:06 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:29:06 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:29:06 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:29:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:15 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:29:15 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:29:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:15 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:29:15 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:29:15 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:15 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:15 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:15 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:15 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:15 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:15 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:15 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:29:15 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:16 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:16 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:29:16 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:16 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:16 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:16 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:16 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:16 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:16 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:16 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:16 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:16 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:16 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:16 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:29:16 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:16 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:16 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:16 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:16 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:29:16 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:29:16 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:16 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:29:50 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:29:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:29:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:29:50 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:29:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:29:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:29:50 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:29:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:29:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:29:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:29:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:29:56 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:56 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:29:56 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:29:56 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:30:08 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:08 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:08 [http-nio-8080-exec-7] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:30:08 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:19 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:19 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:19 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-14 14:30:19 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-14 14:30:22 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:30:22 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:30:22 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:30:22 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:30:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:30:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:30:22 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:30:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:30:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:30:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:30:22 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:22 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:22 [http-nio-8080-exec-7] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:30:22 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:45 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:30:45 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:30:45 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:45 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-2] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:30:45 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:45 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:45 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:30:45 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:30:45 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:30:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:30:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:45 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:45 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:30:45 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:30:45 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:30:45 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:30:45 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:30:47 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:47 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:30:47 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:30:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:30:47 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:30:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:47 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:30:47 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:30:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:30:47 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:30:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:47 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:30:47 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:30:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:30:47 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:30:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:30:47 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:30:47 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:30:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:30:47 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:47 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:30:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:30:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:49 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:30:49 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:49 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:49 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:30:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:49 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:30:49 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:30:49 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:30:49 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:30:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:30:49 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:30:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [0] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [2] as [VARCHAR] - [] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [3] as [TIMESTAMP] - [2025-11-14T14:31:06.830] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [4] as [VARCHAR] - [] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [5] as [INTEGER] - [0] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [6] as [VARCHAR] - [1111c] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [7] as [INTEGER] - [1] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [8] as [VARCHAR] - [测试] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [9] as [TIMESTAMP] - [2025-11-14T14:31:06.830] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [10] as [INTEGER] - [0] +2025-11-14 14:31:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:31:06 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:31:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:31:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:31:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:06 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:31:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:31:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:31:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:31:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:31:06 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:31:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:31:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:31:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:31:06 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:31:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:31:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:31:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:06 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:31:06 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:31:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:31:07 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:07 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:07 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:31:07 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:07 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:07 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:07 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:07 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:07 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:31:07 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:31:07 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:31:07 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:07 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:07 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:31:07 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:07 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:07 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:07 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:31:07 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:31:07 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:31:07 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:07 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:07 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:07 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:07 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:31:07 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:31:31 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:31:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:31:31 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:31:31 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:31:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:31:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:31:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:31:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:31:31 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:31:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:31:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:31:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:31:31 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:31:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:31:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:31:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:31:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:31:31 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:31:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:31:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:31:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:31:31 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:31:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:31:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:31:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:31:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:31:31 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:31:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:31:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:31:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:31:31 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:31:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:04 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:32:04 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:32:04 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:04 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:04 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:32:04 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:32:04 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:04 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:04 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:04 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:04 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:04 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:04 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:04 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:04 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:32:04 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:04 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:04 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:04 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:32:04 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:32:04 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:05 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:05 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:32:05 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:32:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:32:05 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:05 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:05 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:32:05 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:32:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:32:05 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:32:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:05 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:32:05 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:32:05 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:32:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:32:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:05 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:32:05 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:32:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:32:05 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:05 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:32:06 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:32:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:32:06 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:32:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:06 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:32:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:06 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:32:06 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:32:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:32:06 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:32:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:32:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:32:06 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:32:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:32:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:32:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:32:06 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:32:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:32:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:32:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:32:06 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:32:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:32:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:06 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:09 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:32:09 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:32:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:09 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:09 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:09 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:32:09 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:09 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:32:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:09 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:32:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:09 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:32:09 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:32:09 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:09 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:09 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:09 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:32:09 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:32:09 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:32:09 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:09 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:09 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:32:09 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:32:09 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:32:09 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:32:09 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:09 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:32:09 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:32:09 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:32:09 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:32:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:09 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:32:09 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:32:09 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:32:09 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:09 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:11 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:11 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:32:11 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:32:11 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:11 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:32:11 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:32:11 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:32:11 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:11 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:11 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:32:11 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:32:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:32:11 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:11 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:32:11 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:32:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:32:11 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:32:11 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:11 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:32:11 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:32:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:32:11 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:12 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:12 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:32:12 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:12 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:12 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:12 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:32:12 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:32:12 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:32:12 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:12 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:12 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:32:12 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:32:12 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:12 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:12 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:12 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:12 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:32:12 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:32:12 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:32:12 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:12 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:32:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:32:12 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:32:12 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:33:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:33:43 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:33:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:33:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:33:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:33:43 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:33:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:33:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:33:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:33:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:33:43 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:33:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:33:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:33:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:33:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:33:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:33:43 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:33:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:33:43 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:33:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:33:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:33:43 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:33:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:33:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:33:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:33:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:33:43 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:33:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:33:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:33:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:33:43 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:33:43 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:33:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:33:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:33:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:33:43 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:33:43 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:33:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:33:43 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:33:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:33:43 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:33:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:34:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:34:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:34:54 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:34:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:34:54 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:34:54 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:34:54 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:34:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:34:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:34:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:34:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:34:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:34:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:34:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:34:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:34:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:34:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:34:54 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:34:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:34:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:34:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:34:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:34:54 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:34:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:34:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:34:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:34:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:34:54 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:34:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:34:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:34:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:34:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:34:54 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:34:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:34:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:34:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:34:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:34:54 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:34:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:34:54 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:34:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:34:54 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:34:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:47 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-10] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:41:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:47 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:41:47 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:47 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:41:47 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:41:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:41:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:47 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:47 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:47 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:41:47 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:41:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:47 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:47 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:47 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:47 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:41:47 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:41:47 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:41:47 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:47 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:47 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:41:47 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:41:47 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:41:47 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:41:47 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:47 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:41:47 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:41:47 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:41:47 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:41:47 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:47 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:41:47 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:41:47 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:41:47 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:47 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:47 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:48 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:48 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:41:48 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:41:48 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:48 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:41:48 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:41:48 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:41:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:48 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:48 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:48 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:48 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:41:48 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:41:48 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:48 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:48 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:48 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:41:48 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:41:48 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:41:48 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:48 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:48 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:41:48 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:41:48 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:41:48 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:41:48 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:48 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:41:48 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:41:48 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:41:48 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:41:48 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:48 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:41:48 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:41:48 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:41:48 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:48 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:48 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:49 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:41:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:41:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:41:50 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:41:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:50 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:41:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:41:50 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:41:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:41:50 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:41:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:41:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:41:50 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:41:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:41:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:41:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:41:50 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:41:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:41:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:41:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:41:50 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:41:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:41:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:50 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:53 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:53 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:53 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:53 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:53 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:53 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:53 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:53 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:53 [http-nio-8080-exec-7] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:41:53 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:41:53 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:53 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:41:54 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:41:54 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:41:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:41:54 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:41:54 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:41:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:54 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:41:54 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:41:54 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:41:54 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:54 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:41:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:41:54 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:41:54 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:41:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:41:54 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:41:54 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:41:54 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:41:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:41:54 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:41:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:41:54 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:41:54 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:41:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:41:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:41:54 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:41:54 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:45:52 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:52 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:52 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:52 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:52 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:52 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:52 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:52 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:52 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:45:52 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:45:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:52 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:45:52 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:52 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:52 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:45:53 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:45:53 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:45:53 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:45:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:45:53 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:45:53 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:45:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:45:53 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:45:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:45:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:45:53 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:45:53 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:45:53 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:45:53 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:45:53 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:45:53 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:45:53 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:45:53 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:45:53 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:45:53 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:45:53 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:45:53 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:45:53 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:45:53 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:45:53 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:45:53 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:45:53 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:45:53 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:45:53 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:45:53 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:45:53 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:45:53 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:45:53 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:45:53 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:45:53 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:45:53 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:45:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:45:53 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:45:53 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:46:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:58 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:58 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:58 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:46:59 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:46:59 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:46:59 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:46:59 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:46:59 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:46:59 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:46:59 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:46:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:46:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:46:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:46:59 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:46:59 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:46:59 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:46:59 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:03 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:03 [http-nio-8080-exec-4] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:47:03 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:04 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:04 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:04 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-14 14:47:05 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-14 14:47:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:47:05 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:47:05 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:47:05 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:47:05 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:47:05 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:47:05 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:05 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:47:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:47:05 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:47:05 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:05 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:47:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:47:06 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:47:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:47:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:47:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:47:06 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:47:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:47:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:47:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:47:06 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:47:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:47:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:47:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:47:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:47:06 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:47:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:47:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:47:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:47:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:47:06 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:47:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:47:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:06 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:47:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:47:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:47:10 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:47:10 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:47:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:47:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:47:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:47:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:47:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:47:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:47:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:11 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:11 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:47:11 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:47:11 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:47:11 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:47:11 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:11 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:47:11 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:47:11 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:47:11 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:47:11 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:47:11 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:47:11 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:47:11 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:47:11 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:47:11 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:47:11 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:47:11 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:47:11 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:47:11 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:47:11 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:47:11 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:47:11 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:47:11 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:47:11 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:47:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:47:11 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:47:11 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:48:24 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:48:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:48:24 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:24 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:48:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:24 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:48:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:48:24 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:48:24 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:48:24 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:48:24 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:48:24 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:48:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:48:24 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:48:24 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:48:24 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:48:24 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:48:24 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:48:24 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:48:24 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:48:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:48:24 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:48:24 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:48:24 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:48:24 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:24 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:48:24 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:27 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-1] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:48:27 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:48:27 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:27 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:27 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:48:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:27 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:27 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:48:27 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:48:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:27 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:27 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:27 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:27 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:28 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:48:28 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:48:28 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:28 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:48:28 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:28 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:48:28 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:48:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:48:28 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:48:28 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:28 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:48:28 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:48:28 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:48:28 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:48:28 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:28 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:48:28 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:48:28 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:48:28 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:48:28 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:28 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:48:28 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:48:28 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:48:28 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:28 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:28 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:48:28 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-9] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:48:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:48:29 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:48:29 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:48:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:29 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:29 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:29 [http-nio-8080-exec-4] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:48:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:48:42 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:48:42 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:48:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:48:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:48:42 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:48:42 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:48:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:48:42 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:48:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:48:42 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:48:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:48:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:48:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:48:42 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:48:42 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:48:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:48:42 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:48:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:48:42 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:48:42 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:48:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:48:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:48:42 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:48:42 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:40 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:49:40 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:49:40 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:49:40 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:49:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:49:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:40 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:49:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:49:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:41 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:41 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:49:41 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:49:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:49:41 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:49:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:41 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:49:41 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:49:41 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:49:41 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:49:41 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:41 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:49:41 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:49:41 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:49:41 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:49:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:41 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:49:41 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:49:41 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:49:41 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:49:41 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:41 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:49:41 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:49:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:49:41 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:41 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:49:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:42 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:42 [http-nio-8080-exec-10] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:49:42 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:43 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:49:43 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:49:43 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:49:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:49:43 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:49:43 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:49:43 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:49:43 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:49:43 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:43 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:49:43 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:49:43 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:49:43 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:49:43 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:49:43 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:49:43 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:49:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:49:43 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:49:43 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:49:43 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:49:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:43 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:49:43 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:46 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:46 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:46 [http-nio-8080-exec-8] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:49:46 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:49 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-2] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:49:49 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:49:49 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:49:49 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:49:49 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:49 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:49:49 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:49 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:49:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:49 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:49 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:49:49 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:49:50 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:49:50 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:49:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:49:50 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:49:50 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:49:50 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:49:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:49:50 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:49:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:49:50 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:49:50 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:49:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:49:50 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:49:50 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:49:50 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:49:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:49:50 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:49:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:49:50 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:49:50 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:49:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:49:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:49:50 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:49:50 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:50:10 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:50:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:50:10 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:50:10 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:50:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:50:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:50:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:50:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:50:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:50:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:50:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:50:10 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:50:10 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:50:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:50:10 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:50:10 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:50:10 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:50:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:50:10 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:10 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:50:10 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:50:10 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:50:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:50:10 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:50:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:50:10 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:50:10 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:50:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:50:10 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:50:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:50:10 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:50:10 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:50:10 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:10 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:50:10 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:14 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-3] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:50:14 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:50:14 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:50:14 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:50:14 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:50:14 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:14 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:50:14 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:50:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:50:14 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:50:14 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:14 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:50:15 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:15 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:15 [http-nio-8080-exec-5] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:50:15 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:50:18 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:18 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:18 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:50:18 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:50:18 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-14 14:50:18 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-14 14:54:22 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:22 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:54:22 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:54:22 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:22 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:22 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:22 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:54:22 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:54:22 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:54:22 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:22 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:22 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:54:22 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:54:22 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:54:22 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:54:22 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:22 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:54:22 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:54:22 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:54:22 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:54:22 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:22 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:54:22 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:54:22 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:54:22 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:22 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:22 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:25 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:54:25 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:54:25 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:54:25 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:54:25 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:25 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:25 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:25 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:25 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:25 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:25 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:25 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:25 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:27 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:27 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:27 [http-nio-8080-exec-2] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:54:27 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:28 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:28 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:28 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:28 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:28 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收获取所有消息的请求 +2025-11-14 14:54:28 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 查询所有消息 +2025-11-14 14:54:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-1] INFO c.q.m.controller.NonsenseController - 请求获取状态为1的疯言疯语内容 +2025-11-14 14:54:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:54:29 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:54:29 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:29 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-4] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:29 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:29 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:54:29 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:54:29 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:54:29 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:29 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:29 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:54:29 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:54:29 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:54:29 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:54:29 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-2] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:54:29 [http-nio-8080-exec-2] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:54:29 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:54:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:54:29 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:54:29 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:54:29 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:54:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:29 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:29 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:54:31 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:54:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:54:31 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:54:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:31 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:54:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:54:31 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:54:31 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:31 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:54:31 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:54:31 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:54:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:31 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:54:31 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:54:31 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:54:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:54:31 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:54:31 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:54:31 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:54:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:54:31 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:54:31 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:54:31 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:54:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:31 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:31 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:32 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:54:32 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:54:32 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:54:32 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:54:32 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:32 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:32 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:32 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:32 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:32 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:32 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:32 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:33 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:33 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 14:54:33 [http-nio-8080-exec-6] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:54:33 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-4] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 14:54:33 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:33 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:33 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:54:33 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:54:33 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:33 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:33 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:54:33 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:33 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:33 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:33 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 14:54:34 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 14:54:34 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 14:54:34 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:34 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:34 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:34 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:34 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:34 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:34 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:34 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:37 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:37 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 14:54:37 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 14:54:37 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 14:54:37 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:37 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:37 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 14:54:37 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 14:54:37 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 14:54:37 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:37 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 14:54:37 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 14:54:37 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 14:54:37 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 14:54:37 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:54:37 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:37 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 14:54:37 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 14:54:37 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 14:54:37 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-8] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 14:54:37 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 14:54:37 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-9] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 14:54:37 [http-nio-8080-exec-9] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 14:54:37 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 14:54:37 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 14:54:37 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 14:54:37 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 14:54:37 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:06:40 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:06:40 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-8] INFO c.q.m.controller.CategoryController - 接收获取所有分类列表的请求 +2025-11-14 15:06:40 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收获取分类属性数量的请求 +2025-11-14 15:06:40 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:06:40 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=1 +2025-11-14 15:06:40 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-10] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=2 +2025-11-14 15:06:40 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:06:40 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 15:06:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-5] INFO c.q.m.c.CategoryAttributeController - 接收根据分类ID获取属性列表的请求: 分类ID=3 +2025-11-14 15:06:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:40 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 15:06:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:06:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:40 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:06:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 15:06:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 15:06:40 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 15:06:40 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 15:06:41 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 15:06:41 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 15:06:41 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 15:06:41 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 15:06:41 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:06:41 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 15:06:41 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 15:06:41 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 15:06:41 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 15:06:41 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:06:41 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 15:06:41 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 15:06:41 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 15:06:41 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 15:06:41 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 15:06:41 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 15:06:41 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 15:06:41 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 15:06:41 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-6] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 15:06:41 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 15:06:41 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-7] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 15:06:41 [http-nio-8080-exec-7] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 15:06:41 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 15:06:41 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:41 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:41 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 15:06:41 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:06:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:42 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:42 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:42 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:06:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:06:42 [http-nio-8080-exec-9] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/articles/view/undefined,异常消息:Failed to convert value of type 'java.lang.String' to required type 'java.lang.Integer'; nested exception is java.lang.NumberFormatException: For input string: "undefined" +2025-11-14 15:06:42 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 15:06:42 [http-nio-8080-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'java.lang.Integer'; nested exception is java.lang.NumberFormatException: For input string: "undefined"] +2025-11-14 15:06:42 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 15:06:42 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 15:07:45 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:07:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:07:45 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:07:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:07:45 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 15:07:45 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 15:07:45 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 15:08:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:08:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-8] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 15:08:06 [http-nio-8080-exec-8] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 15:08:06 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 15:08:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-3] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 15:08:06 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:08:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-10] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-10] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 4 +2025-11-14 15:08:06 [http-nio-8080-exec-10] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 4 +2025-11-14 15:08:06 [http-nio-8080-exec-10] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [4] +2025-11-14 15:08:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-1] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 15:08:06 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:08:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-5] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-5] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 5 +2025-11-14 15:08:06 [http-nio-8080-exec-5] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 5 +2025-11-14 15:08:06 [http-nio-8080-exec-5] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [5] +2025-11-14 15:08:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-2] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-2] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 15:08:06 [http-nio-8080-exec-2] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 15:08:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-6] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-6] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 7 +2025-11-14 15:08:06 [http-nio-8080-exec-6] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 7 +2025-11-14 15:08:06 [http-nio-8080-exec-6] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [7] +2025-11-14 15:08:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-7] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-7] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=2 +2025-11-14 15:08:06 [http-nio-8080-exec-7] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [2] +2025-11-14 15:08:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-4] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-4] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 9 +2025-11-14 15:08:06 [http-nio-8080-exec-4] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 9 +2025-11-14 15:08:06 [http-nio-8080-exec-4] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [9] +2025-11-14 15:08:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-9] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:06 [http-nio-8080-exec-9] INFO c.q.m.c.CategoryAttributeController - 接收根据ID获取分类属性的请求: ID=1 +2025-11-14 15:08:06 [http-nio-8080-exec-9] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [1] +2025-11-14 15:08:09 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:09 [http-nio-8080-exec-8] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:09 [http-nio-8080-exec-8] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:09 [http-nio-8080-exec-8] ERROR c.q.m.GlobalExceptionHandler - 请求路径:/api/articles/view/undefined,异常消息:Failed to convert value of type 'java.lang.String' to required type 'java.lang.Integer'; nested exception is java.lang.NumberFormatException: For input string: "undefined" +2025-11-14 15:08:09 [http-nio-8080-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'java.lang.Integer'; nested exception is java.lang.NumberFormatException: For input string: "undefined"] +2025-11-14 15:08:09 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:09 [http-nio-8080-exec-3] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:08:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:08:09 [http-nio-8080-exec-3] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 15:08:09 [http-nio-8080-exec-3] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 15:08:09 [http-nio-8080-exec-3] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] +2025-11-14 15:10:28 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:10:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:10:28 [http-nio-8080-exec-1] INFO c.q.m.c.CustomUserDetailsService - 用户登录认证: 123456 +2025-11-14 15:10:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [VARCHAR] - [123456] +2025-11-14 15:10:28 [http-nio-8080-exec-1] INFO c.q.m.controller.MessageController - 接收根据文章ID获取消息的请求: 3 +2025-11-14 15:10:28 [http-nio-8080-exec-1] INFO c.q.m.service.MessageService - 根据文章ID查询消息: 3 +2025-11-14 15:10:28 [http-nio-8080-exec-1] TRACE o.h.type.descriptor.sql.BasicBinder - binding parameter [1] as [INTEGER] - [3] diff --git a/logs/web_project.log.2025-11-03.0.gz b/logs/web_project.log.2025-11-03.0.gz deleted file mode 100644 index f1a30746c45e2bdbe43ec9f237a198a397217160..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 73419 zcmbSzc|4SD`+lWTd6+h2osy*pMY5BGBt(|%$&!o^*_WwQQ`RE;o_#E1O_nhsTlN@Z zU&3JQ`#Sut8PC%DeBa;a^XmEZ$2D_3X70J}^E%JtJdWeKp*~0U?fy4~eiFb`Qxr#B z7yY`8@T56VOPQ@ZCG2Sbd>^Y)u7r+K2SeSJ>{BMKve!7|+ie??FHK%z{d%qR-Bx*1 zC^Hk+<&#|Z&mTT;e-2UO_}*%zdFpOAJO}H}@KnB!J+jieA8TJ#Q?pnxQJg-5B+N__ zke^|nomzAGI+!aLKDY05IhdfJRbJWBZ*_5%P37X%O@6rktG>zWSuO*m+ZH8~Z#RTD z(MIx(3Oxu!pNb&!Ggr!LxnZpZg=jBv`4t4~x4Kz4T^T)N2t!!G4xxirmbmpDtGBbh z5-H4o7*`4_v=pzdY#PjZYCq;}>_&~UE`8=ONsoh~S*8OZqH9%kCq3hjm7SvYY@K@Z zl)0*!-PL60!%+JH&4Q*ES9XrW&{Y$6Z(+G3{n>15afE9piYqRLA#&5a-nW6L)veGCZJqH+%y+{}LAzSP$7bc{ ziwzw??_oouL#a~2x1>T(OKc2Y4Rk)awgc<+K3x6Ux&4+oY~iV(RRN#McH*fj`oP=z zcMH4|T0=8cm}i_49?HU%iEvtZuE&IIn1t_&pJzLDP=CjCUr|uLO`g+nCtWq^$IGp@ zXL|j7se%R~`o__zFeIjAu5?9FQr=+lhVI;U)S#aEfK^0Et1?ZUaARO8CM+Gh+z#fb(3GAOujhEi0gqgC-_hYQx57n5Na(xpS%9 z8v8vK`#!tusD=GeTRH#SUBOJ7I&V(Jlu@`u?Tmu_qIF_*UqZi^=MUK!Va1ul{lZWr zjre$IT+sXxV7K~z3%ar_8JGo{DEpJ~nEEYe* zoZRHvC5K2B%N84XvGEBPa7SnWnqT3`bFsM1*SvY({D^|vutmR)s*E#Xx5jKY?Z$(INu}A;1*c>`alwdB zo11FsNxFI*CgxIFeemOG>H8dYImb-Y%ZCqQoJU5U1x4wq`}Dc?L#iK9V)Y={`A=$N z1^V@B6g);&PK`#aZ}1ikX$&pym&czq3cETP1{5O_wpTYMQ8-JX61+7-&^y7$(UEG> zGvB<%;~3CMY~7+3tG;Njxw7wFrZcLI>hEdgcl=!n^I~6Je%lbsMG1}GsD51%f;KCa zA{NZ!XB^H?C{()zHM`U)c3#8&aoW*77|D&ozwUp~9>Oh&-dx4*i@CVHu;Ry5Faqze z+83%2>*F^)28V44H|IAf{;^{eb2e}tKTxqcpdHlF*M!a1owi8~PMRHUC2(_pLQVC-PE_6I{cqO5On0IGVxtA9~t_L_e}_B&Q=Be(d9~6 z7Y||naqCuBW%&w)Lt~;hbF&%Bq1danU10rZ1%I3L)1kF*$WJOS-HxXiQa8bpM2fBo za%sa0KjFQ~kgIERp|i+lP6Kq?H1br`hNkH&%7FIZ+7d|nQ1zoOHR~E&=5$#^KkLfI zYJ;;~RBKM;aCleLRyad-08NCsfE$<5od{B{bD!?dFsFpO20tQD0o#k8H*yGvhrQM|H&rrEbSg2kOMJL`&*0=L>mPwZ zh>hkE3&#=R?#33^u3PA=h?NiF$TS=HLXdF9=4R#`R|un5sO2oKdS@}RAda?UYLFI3 z-4~~m&M#sq-|SZPIKPLtXE`+WA#)jhL2_Cj%g(BuonkKW@|0>%A0#@t&r&!)t7(Jqys&zQ z#fe~gIEoqBzoef|$7`RO9j<>POnbma9-(--Fz9iv8=JUFI_;Wg_Ex#PprxIJz5Cn8 z^)q+i{r3tSqN+Uy-5xJy+>3M@rSs3~>-R54=E(_bHX3P%qWV(d9(J1!t({sg>|vYPNn9a>wM^=nTIO9 z{p`X*6HZqds=8;-XgfI#^ct+3G+nFGu7tz4mYkpv*HtzL-qnHj0yhN%-6}K%?b0~H zGD~bKRq43H`(Yhe{aRN~p`XPTm8`?Y@LEQXR<`E7J{*xh`RTe026as6aP&y^xC@K5 z>g1e};k6qMNj=sI#8wV%)RX%TCDu9)DC=Hrdd_G?N+D{KlAdWvjU*vWo8m{`RzD&1 z7(2tv~WAL82X@k@E3*^O}>W85ovz(+_2G`+1Gk1gT(q`|Ix!*+a?Ax zZ=yHnn^~(FC^b_e>tx#a_XU=8iYRXCCGgMOq`L}QIMJc%Ps8}DHQP81$)>}jwHPG6)+Wy`$Ei!2Me2S-~#@!YXC7I0rHJ|7@<)*D% zf4z&-cVh1_PR}C-G)!a-W@5hZiSZGV+6VmoZFIJy4yfqgZs&Ut;JL7<0-rlO z)wH$c@-9VMLb-K|@1tub%&{i4xFA%8=>Du${>k}y)X?`G7h^6@F%_l8iz#u#WtTG6 z1!l`M7>1$M2|S^p>QW!_j2d_d?ROiw8&;8`w{ecc#M0W=u~8b%6HBzTH_kqLsNrKq{-Ic|lt_%S@-XvOn0q$DS#_T zkMKfu%UYrv&*Fq{O2G*iKEk*O`33}R|KwNMANcwTrr)QH!gJf_sh~)Ilx$h3`{iq> zl})tgLiXLAkt;@P>tFVVG?R3 zzmz^(NExPj|i_5KWf9NG~sqTr`fB@VrCd%RAC$n4u4nncg2`lnr zO?@w1M7CFwe2oHV^i-9asT5e2BG5Ccd;xkg)CuqEZ}Au}wNCiuFa9j&VtcUktybph zWt(TN+7MlYq|n8!5iOJpzbk7pV|fXL#xP?2TcYavWBZB;ideDE)X-Jz&<{^3{B0^4 zu`fN^tHn7kZc77^Xv0;)CZStsf|l^bCjGHyqtHc6R6~g0$DD%RA-I6l%7u-LVI0~l z0W$11?6oyAU6=5@&I?&58#H{tA1*CAcXet+JdcUBH~gl^siq}=Oo*&UCs*SgJ1X3) zLy(Gtj)C_8gS4Q?y4uTL=}p(Qp4nKBmC9BdDX8Z{`CPrKKkE)*!U-c1Y?YRi@ zgS6X1$@;$l@xKP?&TB6p!Mtf3aSAIg=L)P8Rb7OiKQbH<9zHVewovzFQ&Zg6eixl zf~T=Z6jk;b&;0T-Hq`xV?`!r0|IDot1Xd6K_y3vnw__a8%TDLsJ^$x}(8UdX(gpEb z^HK{vUNV@xod?I0tS(4z5m1$?7#152jJ;VYdaKn51NEF6yT?>-!_WpHwtp`iQWljF zEgHEgdZnm{?&8N&LDBp!g-(V1MnbN51N*u0%L008y;Dws+Fp_KB?kAXmsJ+ABL%&R zcQ*-C*mb|k%SGJki=T5Ip-o=pP`h7xx-4HuN*O6Kt5Oy2;Vf1$LO6HH$oL%hsQ~`7%7b(SfbpZASMN<$6rVi7wt1$TSvuikETx?ct5ln zfPhMc>uh`|7BEjc!#Qlj_%(CBP;r9mJInUaatK3>Ila#Kvf+a0Lb=m>NG;`vSI8XY`g8Z|Qn#QMF<8UQ| zW6u6xE6G=-YsU$$n4JlmIYAc`D6 zroCqGXH~i7=Ri6sB_|*&`!}C^yqCJ20|7w=hF_&_Rk(Cgf}rv^9(ZJmf;|6K>H##r z5Mm#{X`X|T=g*E&B2GF`5g^Nm4Va=q-1c2~DrQOT*m7vk2pCGY8=aK*+JFT?QZesu zUMI$r=B3-A1S122Q72VKbg;?&$2LjsRha|!BBBxq(g#k8zC27`jUX`?FPsvms-;AatFT)+=RcP0?7m2`b4Mmg{LO_2b&N1qQ1EFpHri49-2D< zBgL)i-r`oNmW>M5=5uKZSxYHQ3dZ*k-3loA8_#-tWP^fm+P%1&i|-*IoYv2>pZGHZ zNO7#8E!8Op?wOXqagrR}y0;!?Y|hS^2E`py3ETbUyrQRe<5BANJTv%pz_9-Al+xQHgUtmrCtGBoy#+-J<@Am6!4*yyt^53Kinp_r8US>k&l_9(gST zX-Afv2vRLjkT!59i}!(Kavcut**Je;9cdVcVfQ|~gyV!>ho5`5kDP4Cc?eV7GH}uI z5yzv^Gg{p`7mc1yt}?68G#g`)Y+?trgwKi{XK{VWd6V)JMJw2RY+_)w!0^TR`_% zBI_{fWz^0_Wdl}8*YpGG%d#5{e{=mM4NU5i>81&*~K%-g_(@Ymp8r zqR-0<%(MH0XFB5}`FC<5#%$Anibn1Go!>bWQj+(hRODJoZAIE!cUuXj-^s#*r$H7r z_$3QB4vA*yYTiUNTdRZEL&U@#1rd4u87Mh#X+X&V!?R-SA7pPLK*@OqN)9<)*}LsxyW#NY&u~DDS!h(*i}3BH&A`2-&2y%~atZlzbTOf24YFM8gDw*b z<(WFmhkY)Q;!ko9`IGxBwDfFnQIGDG)w4cDCHt9}$^rI@5P*ir&#{qGXg7 zdNAj~4A^~m0Q-IccG?j|q04a|=Y{sE@{AAEzTA$fs{csJA!Xj_&cj?c$*$I;KNbt{+}& zrh9wL@sg`^90#!+l;>;+h@%w{M(@FE4lvA<})3OKpe00o* zGFiXfp1foiQs{{r8ntDS(bP~FOc1-vl1js?b_z*>eL(=VQ;h{IIv8Gexb+Z`N~$gd zP+c@A$@AA8;>3{YVh7Gq@xBbC)4lrH($I1rwa198I^vJ@xU9p>hDm;VT&_5@dst1c zV2I8g-kaX;VHp`~BVI$Hv3J@lhxucO^N}XY+3xFNPqMB;H{4kFo^6U-F#n~k__NE{ zbg83kFu29`;GdQQ#b@vIA05blG$hje>(7g*6c7H=e_+jKXnuM5ONjq}+Yw@WzW}Zn zP0V)l{m#YG@WsMc*c-l58I%BbFLk&mF{N**axDsTMrFW_$wFav-n0suEXHrFmThodRn=Zu+w8kAlh$Ub zzF8N_Yr;RtcGX2Z-vxcDh9F$nzK&v|=EOw^r(nb8AITNS`-iHQ>xNxYr{)rv=ZN7I8_xBalQMQ1Xdj3xXjN*H?`b&uYtI7TEG3EH7WU6zW z^$S1WapBNc7x-wnv>$e0rr$@K^u)8DpA7igc;bcj&3!6m+AlS3+&ZL1eeU)98@C=G zJ$OR>$i-J50YG>k*fRo#r*GUoIV5-MaS-IyN6>jB9w*J8zH#iFrolPQfu%{h+kc#` zbzS}}-*K)sm&W?RV(#M%iVhi7f|tWru?H*w8Ds!tPy>e9G=Y~{I{-3xzygrLLLPaj3hRPg==6^Kfc=}hCnT< zwwQDp2J);vm%RkE!LlhI;0>f3j5aR3UIzek$Jr3)x@QpuO#gxdpVS9AqqZ_%ASlhAX0 zS()n^jVobxQ!NAEq%Y**=C=CAc&VY&J#`z6+CJLY<{-K4DeUcLse7ASdOg={$}IX@ z(4ph_WfkW1fnN1R1!2ZJO<3WSg0OjroRB$8?j@`>&|yf|miG%C zh&voxVck}Dc&R+8~Bd5Twu zp8Q!Kq;5au1)B_fYX}x{UwIOuxMRuOy4pWN(H| zHjfECq4Utx0Y@37VlRWQd=KbBKuo;^0Re{DRDrfEj--H~2LVy?oIIaR)%lvxeF*Xo zWAiU^XLT_U5?1p5=GT9i9zz4Xbxr_$CFTa!a3I@$xIox14R(cJ)w?gIIyP!y13mMl zqO!S+b$ey=@9gj>mT0>a*&OgEhqXaY6C{p1pvSbnvuNQSkG4}^*t^_MmU{T_|b%X_b9?dwUNizYHGUoi^p;|w$G^@ z(H>wY^lgJ8d$F`NLF)v=W4%%-7KV4e?WYc(KmXxF?JaN%87_j<0fwfD?8O1T?I3mB z0;xlujXZD4E|6OxkgJurV;chbmifmPb6gwQP zR|hfI*7t3LA~Odi&r|HY*ulQpnS|p9>gF3TdWjyk_EkCCZ*1+a-b8b6R6cDb!68J* z+EH>l2Jq=P1mIIrJ0{IOe{+e1PvHQc{?m>@u~_J`vQ3eO;XW;1p?wNmlMk@D8M0_K z8`37fPsy7G>DUkUH;Eyj0g*-C>bEMK?~^)d2Y?1Zf*{S4@&oq+mPxuftJ39n?ZKEql+ONJ*PhWA?zV^shB%rP&$h~wt z$D;}|?Eo-VjI4FgZcC^*c)U4YS!#|MV64B0D;fy}2T6qHi1RYbV$H(L} zJw%>UpQ*T!I*_M`^!a@3{teY{()mu;?q9yasy~4>$`F zj~#|#e|vZla2A&VXYu?m9$UHrQ`|7{;vW|IU+grA$o_Xn6I!%aBHIbN$1Le-DZL8o z>-X%GlphVEG1tFZz4=XgbEvLWTB^VJG^-<@5Z7j-(H|+ZXutoV{w*?gQ?;F+&gVNb zZ8&gOx~vD*=+5R+lzF9?T4UhZ!{NA;?J{VU<&3@yee^NhRS{vK9$y&Ceoh(naC zLv*nL1Ab<=lJJI8?lzoKw~c2&D3X^}>E->)PM~qL2cYv8jUm0hmnqnIMq-TA8%)+o zkkMHQU^DFjn@O&W1}DG0ECOui|E*Lrns160qeyy17T4mg&H%2p0bJ{DtDtzC3Ja{t-0X9KuVM{d35*?V`Ofzv{||fta!yw(t#5-PWq;|M&7X;Fn`IrN5pQ1Ph4# z`P0^3a@9zmS&NTeU7y)8tMngmJVJZGoX0zo*kt@;bl9mRnej_BK0Vs2rFw=hX}kYVl5TEN?hd zriYBO5MF53h!3*N(dgPiODX#I&jPycCkvqK!0@@#`-2N}G=MOe1$3P=C3*h2(^qkg zui~bHtEZ?`{k6lxaGHkg)7syQgXUd>hIaS-8gY0Cq3Vx|%+Q}RZBbT23vFM!xBxK% zl2%Gr#gFgV_v%w&9H*x)#UHgz;LFZxva8)r^agbw3FHoZh${ndZoL2ouF1AL9GCnd?=0WojRK) zs1@pRpjME666wvC8fnip>da?2&^IN{KOYgoW8=0<<(Pq3fcsdyD+YjQA%K)i)&(%^ zzK54V%DqcUxf`;7i3OPAcIg*0ML6|8FdLI|Z8nJ5os9{jvhE@Qm$Wr19v&?S+h*`j zu46H!58R6z*o<5bU3ywOB-V>erC}m77US`;sV3*OA(kY@@Go-cW3NqiG>xC?2*E&7)*x(g~L62u&{w%Whb0v$?M zMDqhgg+$q(h34o4awL${wsW8G@WU z%KTFltaXg+Ew(@950d)I&?5?f2UX-CD*M`h+$&^Go22pzjob=6mne(?DNJO@N~A8ffXw<+lS(K zwx0}NL85H|3iK{UR6I>R4ixC;BnA2}6%!r@cZkPmwm02w`hF!NKTo~vXUD8)6mv|1 z+KFa08eEyq3|g3jqtC znOCdbyCI1Pt+W@>oM$%N)j0R4HUOT|Z0O_X+KPgE6i1!~Lb9Scpa%waC562QKyDl+ zi1E4s&-kpV%#M6x+Wx(_1-s<1IFBev+I|40KleSsSX;;_@i8@N=h(R`YCaDbM+`#@qRswW!U+qCQClmj> zSC3t04tXy}*O5%GbCm?}e@pggxnTK$90R<$f5(6`h=Kh+mq=G6`5Uq$XgIPhX>%Z+ z3A-$Gexfv>p($2mKx!kk9ApOj?9nk}Qp>RdS`IQzy(>DWW_jF-bJOV@PzJ4m_eKdr zyOF_RaaN!sgHjT>hf;E^ovbny?y5|g|ENqrP3sl=9r>j4qK8dV14(6KOZ9f2>(o68 zWTuu=dm<3ekyg6|?6|*HJF?Qg9q3-}zoqY~(dX8FDw~j_^VA%X{Ys+>@{(7~-kcGh zYCtC@N%J4%$eFT~Ii@npd(7hC?<7hZJ)nY@l!7#Axi3U(p}am2qSg55!y!Pm#&PXI z2c;d6<+N|UZ+fNR_{9a|+^nBLkT*u20&0)|jPpv3jX$<>Vbo32czZt;4T&6-45uP@ zcYtj+CMias(L<~&y|lPYQj8W!z@Ow|BE4C;#nZ3_`^9|pFP{=1!uIu%Trq!}mR1Qj zoap!1r1k$|KKh^9#@Ox_qHbX!)GFK3vq3DZnLHm5^KfrDC>kxY%g)s`>lAF~KsLdIP z6MvfFX|EK0y14a$-F`=VT_1)t4GohKm-F_1coEUURz@Aif{LIUUZu_X@^??9XKf<@ z@o$1H$Y;Fo062dGkO7c@<0aGoe2Vvsv4G>%0%UnM5Dos+1W;L;PJ1QG9e!!;{w3Zt zEB%*F%x&&JIZb?|2Xmok|N@=JHSo4AFB9YlMjPEU_Q$dL+$E#4je)U|cu) z2K>u5iF01k(!{=+;XcG?-)J6bhtPmZ1hI14cqbd)DLn;Ufo%TratAO4EBx#yewot_ zC5p@C!o_j+J5^OfBX;Nhwv`EX6%Sa+J8nQ5%=z+9*=JAOO^fWB zfj7I>95FGm8LOU7$7RiwB}nCu;XB6%E`l~qVV~!R@NB!~x68t>f>7r=pwENP?h-+kIoBq=6<=zmV8EXfidif_qD^-2D-()7ST zDZQDzt6N(*)tv?Gv%;i5&1hYZF4j0|r#uYv#XR0uSUtd*6nnvG4S|Z4TyOi*TUzzR zQI#uQi?&rwfvn2!*nX&-11qUf=6y z^KrG@=a4xfE2$*aDTChiv+Sugdg)$kI#Wcib03R`X6kA|JP)YSNjP>yRqnQBcastiriTM9`z=0UheLJ zz}j=4fb;UK7~oOKTrHW#^(T1yA1toFZ?4v}Bu0he-YEaP+d71-QIgqKlBhuPS(1rY z_IZgVlFw3_Br1>$R=ZsV77H;{o7_bc(SM_f1d^vNyMbi$+^fs)FT08%uh8@Bz^;PL z9g#(M3@Uf;73a{thjcZd0WM*5*{}}J_1AN4FA!@ za#B9(1^H-jn>-Jlfvidk_rjkrF`1p;w!?{-YL_HZhvYInBpDEqwRH7zpU>*O=hdy? zGo{Ks)WrrIYhV9A8zu0;00t>7aQ>V(UIq0TFHFY(Ehv@`I&~}@LK_!@$OFVD5VA7{cGQ5JOiBLCCBSIz=G~KW z6eNFU9PnrEI`_yK*vMeqhIUzslI+dX3q@M!O(zk5>6AG?#C)Pg zGY1^Li0UJ>X|Y4`WCBNWZ*~<4U{@(s=Fhj#kdtaR_#I!KY(lCTT|cRN|GwM38`3nN z07k5}OSz<8?03kU?|P;u5)Thra6n&PS|8l--!6laspB@n`nrBn-{d zH*c>s=D6N3b5G}P7@#Ig=$Md(L%Yxznsk{YIFbP|hs@P5AUHl>C%IbwLdnM4ShMYG zdvvv+_v*7*{TEdG<>i0(M5L_PV>+g%5q%~aQWFoVWa50%N6 ztuxEi%flt;js~v4&>qHrtN+1Ht!cK(lVi!r+$lCTv;CKS!O33;7PE?#j&~`}su`G- zf2ta78Tehb%!n<$&j(M=$z{7N+u`{+^5L zt;0r=#2Fif0f4&8V`H~xhUY_e^s1YJV~dNf6?h83Ot+F*>oY_A)r*1&8|Bgp0P@gW{0b1+1N2fZr3Vh@tJ zAQ$_IFj4Y6BD}Ie6W4I)Kpgzy{`;0Rcc{O%)`+n?)MnGDR61TFL*Y1%<#Mup2C$bM zB(ok_WLG=`nIxI@Xn>^kmy-rS>y-{;R{McVONHqNhz69umCa+jVFYKBi;KnIeTs?S zdo3;h(!$@|+jYPQI4SqgGhviO~<}EpHm~N4k4*Wca4+Kq*M}l2RxK< zV(dAx8YByb13*iEdnoU+U^Q8&L0Mwt;LXo2ES2vlDRuY&QDpfsD%-bQDpn#vqV)H| znp*Hf@mBzCzT>JHhnYRFcea#@I4L)sIg$Yc3O%0Dzl^jQNN_ynx6Yy5ADzj#%1?s0 zbLnhQM!Mhe+m-YGn=X6wK`xW+Q-Y!FZ+3Lm0zTczIKY>Ff?nF~=l1BxPDpjw1p-Zf z0|63L>ZJLtn5519Ucn2vH;?+2dlYj^e@4KdsQ>8RC7t|G$YPjVHJeY`>sucnK@POL z2E2E!&gA2L_8F`p{20R%c%#AtWI}AO$NDJ#5wrhwSnt2vXbXR-=l_%Ck#3KrhS=^o z^Pe`_)p!50(XK=S8?Dj*W}_AQZ#G)H|7)XN;1i?GO7pO`w2Y37Kt`3J(QcKOUCphe zG%;;fd(%*QE#rHoPORX;zPtX9TLh%ZZG2V=>%6YQmbp{ z@e^Xe3}K$IYld)v0j(VyEvC+r=C6TMw>*peK)B@q+T1igU@`;4#A0@(*BU@Qz2yMf zT;zH3e4>~-x>z0ki{apZx<`AqI!o>G9!Yk!c#KuUY#8s2TN}nqv124Xg5(5Nm)-j2 z)A`@TdPr_fuU4YA#kQ7uqIsI7HiyQAW1*7U*tXei$EChm1axbCVpfV3!(u}A^an>|kh&XOFjThyt=q!%@Y9WPCt+^Rhiw$i6%|Q}*3{AcZ>X>LAY6i+!QSRge*Y zt~!(q34r0@A<6KtYqNVbpG`76Oaj9LnNr*J)@hWBnF^4EP!eZhPcp^DVM1CCks$%_ z3|=QecrvlZp>{Qn?-OJ)~i={ z;jkc+WYUaNfyN&}^TO1F9cw*_OQ%L@cIKAzxZsSTk%eD!uLa+R#2EsGYWFn79*K^2 zC3wv(bMk2l(0r}^mg~CwqU8rUf>KAQ_wM01o=IB##Qyt0q>9lHQfa|iy{rFr#U;7=%NJXuJ?0Q&)cI7IjwOq=dpa_td7P!I1wCR$*Y)CK zZd1j8ouJWZrjO?>!uu>JqkoSr)85T-)62UDwp4L64w-TA>Iknl!(DtZ8WJ@ixfg%s zu8^_NPqUiTkI%QY=@%!-vVXH}xS2}cOKJ`|<)S7by82ssTB zAqT+WU6#Pkb4WnQ#gPa(GI%6gRQw4@8l&19RG9qNbTPq<&r^cj=Q03I(4$4M_p@#L z*WWkx3R4likk{dw(z}L=^Lrvc;dk5ncMTN(+!DbUN+A;N&JaKR5>y`W=eM>)yYQZX(9Af!KVBPKQMI z?=f%Q2N!gogE#lcXG_1OeU=-Yh{Tf&E9Hysv6^&%JoAcKqTD^V4NdAK5wqlgWgn85 z0>tcB(gFCtk8o#0x_b~sEs`eTasuMfcOk0q&BnQTi0aO;jl$02K#G5PE(3hZFf1~FfCQBT67NM}2FgX)2+q$V^dq0uYQP511l6t&5dtj!n7 zgy>>41P<6LsbF~6i0#FL^u3@JjWD#;cCX}jE;lgWmtw?y|Cy>@4->Jey)AW_Q>@hD82lb zJc3@Bblrt)5oCm+p$P>wcN{d-iZ3^a_pJAuw-?SlhVj{)x|j6a^IKTpwfZFAsU+0L znoz15Tzvx1=skLfUiFf!bV0Mg29@{4;CFoDvZqhqBlK0}=G~IHl60)@)1!zkJyy3< zK@AUG4d%9T3Cc$2AO?xIjZvoeJ{lN?+g~h@VyK$By}ax7HGClDa_Jt6i$t2luU_BR zM46N>zn`H2+uNQ9RqoeJZov`n4IDI#@`cFs7-9P8b<9u_1+Uwgm15}ANe9Q?#H@(m2*&s z#cavS!m`9H_`@Fp_8SPiq3~mL30h=*L;XiIDs^MkEg9&-FK4R&*GTOi03c;lx)fJjWK4hplI2nEQM_ zRVG5xPNBuFTjgU-9jf|~Lbc**lFmah3PDn;IA!UcX(QsRj!y;lds-c~w(oU*c=O=3cFbK@sl2dz=d z{5w}Y>717CgXaUbFwfE(bBarRQ;aQhnk+Y7XxJLJv3W&_UQ6nV^$$hd@824}1D)8$ zQMP)eI!w08ELvlnTGk6wVfwGXi>ld+b za49&INy=Nd&Z{LsHqr|`r$l;_KN6*J_-uz%(P=o9+%MH3_sURO;@VG$o!{?@-I$h-r8}1tN zj&QPBW?fPUvija0Z{A-5Ih@&FNs*B7eLD4BoLPjqOA=C+8L6Wc9HC||9ntU#r>PWM znq0hXksteYZ9KqSOU+N^LXe;Vcu=M9;wQ1^#^En?Hc{4n0`1Kxee`my4aQ~hp>1P{ zWBO+kiK*0};l^m5H`79;#q&R~nMV5XrBW@7h)xB+M!Dt4*28BH{eBL+xP#|Yrly}# zD98iPr_?c+*HF?g+92rRLM+~yF5gsdRTJVILuyCTvj^$Fy#pF26TNC_RnLWHmjk!oq%aN; z?nGUx_ZIic8FTh*y=tJ8c|(cuoG6nozXYe>`)7Tv_or2N$`S%Q6y&vz6rI^b=$ zjFmWtPCjg$!8w1bm04k-_HE>lNI3V|9-*0<WcSGIY(oDhx9NfzSPMEyrj@-c(t;_ zhxn|w?MIbHcRoaL`{J#FMyv-t9Q@#=F&6HJQmeJ?jtU=h-U_Najnhoo>~I!g$1#x~ z;K(jaQ>|3z@hvcczd32zlv8)%$F)Z?!>?cFjov|-CA8Xn_C-&(TBa+W*Z=eRj2^An z<)-|nkL2$?gG*Z$Xu!C{wIyQdIep}{740%A!ZhYY%K2GE!&d??@)dMuju9V7D6zzP z1vX8l27M)p7+H{?!&p=QrUu7nvour6>Htybn_b2kp|F;YjeP=~lN*86;a%TGcxhXj zWJ(@QacHmWwbfnL4s5a&h*^r7It4#*D9f3kI#W06xDph?dedAf=}OTzjKKEnQ@xUc z?vVM8)Nn3n*Y~yh$pCBOBvbjw>|(NkvM51!?#~AwmJD4tXy}7N4hm682P8jbZfqFy zHBJ9AURGR8UDNPj*7VizJPaxLvAB(q7bXN3Ju@rv*g)l7MP}pUBB~V`{S%IU zCs@^m+b9Ek>#U`R1smN%@;5kTP|h;20cwez(d8#4OSjSZtG%Clzyk-v#h;>o=1VGQq{GVEE|DrUK4UpjyBvcyzW6Mhn% z_5Is;HrKT(=PJjD7kQY0hS-29 z*1V{zFNrN#{B6^mbIWJG^s8{z%~;)6=}eu*c{r_m`Qh6}oP!KvlBr7si7u!eZ!Fr85D|JZY^Th{$re*`L*nQIPy2Rf<5g-0ug^>za|>&M>+1pX^jU;Q1WSx`QK$yJ za$Qp1kaJmIt9g?h2XxbHVdDr1YTcJ! zs0TX*+xCQEX5<~OJZz-uwHR0knYdW=O}DSG&m0C1ALcs=Qz^-r6@n?f{?d}+G98yQ zU^ODrDPZ2{*R9s}l-RpC#o5rk<$O#C_6VbE6sjYB{^ott4omX~CH9RGHXR;3V;*u0 z=8c(gI`#nKZ#{5yHUgRm=G*4c8KECfLT8%;Pljt#BdUn-v#2cBFi(Y05Ep()&pxwwwxD~H zhfv^w>9Dv7%Y!+f%&@Boqjb+ljXrlAaj&uAFYxCHFvx=~d+=L{PiDik?k-N2tIIpa z8!S%0fvzhC=%g6fujnaDcL%6H>T+4E;hZ8ZU;%8=hp#QmOfL6YiPkEAZV`|9^ z=F@gBQ9oV#ZWcCH5Lw~aD6Uys9WM^n?2SIp^BpRtv09-KT}{eR=AsZf?W1;?aSz8% zeHOFh&Exp~5tcp{f3^r;9|W5`axqjN7A2E~K9k{IbPe@_Dg@RghtkO!<+q5odtyB? zT3aBe$fuuG6cT+7mn+MonPv7`Eli&$_3NRO?S>9My{ty15 z^3(;xlzPlqUjSW8` z;*h_@!>$8{d;~mg$oPA0Jdr78FtIXBbA_TXJ3Q zK6WTm4b{kxK8^l-xvmOjK*c!W`b5RTj8HID^yMsCOXCGk%tn0&%)Tw_onfRn^5D3T z>bL&)7u77{aNSw69SH?|28#sh^bR|89@>uAmZj!ss7_bGD}!`lCYiy^sg9^1>nGA@ zGWDqpgzcs@`yw6{5Y0DwuDaL%1~yIA$*R#t&!%)qlyUA@A)S)yt^ zPY-a_l!ttPd7insIlbaJqv!~N-BaTA_kuhlBuXhO`oq~vA+Q*e#$Xt=po3m5NAA5a z-Mr83^lpmch7#jTe4LH0S6rnn4fC7a%i&3GVlBls2`s1lwlBZwgUD_Mh-8(Zn<}Y79%x$*w zE+W0%S zGgalEIykL1_9RuH^7U-0Ey^0+N}W-blOuD!D{m2Ih9hNo|5dBDv&d zpi(DAN(jDv?2T5xNwIy!1^ku1pU0x$gl6k$b?}Gp9eG*X3@#(DZG(?;Pm)e9i3|QF zl{_ib=aJ4*fLjmCn#8_z{DNt?k{8>yY^m1PQ;1vIb`}MCRelqeNMk{VZXG{UgoSm$RQZYJ9}@qbTT5xa=JX5`A|t) zrBqWCFR;f{BAvR78P6)?G9d;o#<|D$&e6Y$Mi3B{jVar{{`|{4-HId^>2=%guD(85 z^in9ZQf|!kOE~lVre$MUEXi7BV}iz=<^#*`5b}5sj5r-gw)EDduMm;iW5|6Yb9fYP*tyx*iQcQk< z4nm9bB{Iga^?s2~rT~_C6>XL&6*cSYox#AeeN9G6ro#c(Hrc~SvVnVQ=+>QhJ<(*9gW)B1}~ zLay1gyIYRtESeDwxew%vmkXcVsZr;8|FR~x%|GpN)t#z2o+FKCH_bQAQJayPyymV9 zTSYId9KCwXx9}GV_ut5>a6Zb7VKbQgO;hnvM>3a0595RHn@vi`?2PwvemZjAnb;N2 z9_OJbG-)bA`-#CR*o%4`po5y8FSPv-BAu)LgJN^Q`$sd<97XwEuOd`?GjdDg_+4K* zawb&APe(Ikidcsyu#{nGs8hDrT>bgAR3!fG*FVz55QX3jMRnzP>qH4;+?*>Un;iV0 z6NQw0v86HQ$S4ca(dqzDcjc=K8u(}nCl?=vXEg; z0`<;i&x$n*P23_F*smkCs(#t*AlZ=4NK2%OZmVdEg+vZCdnI<;=3BN+g{_%kg%yT1 zZ)OMh2W`r2%8CTV9t;%Xuf)&x`d$B`$=aL~bK79Dho~H=h2*Z(= zg;J`n+hu=!F?-|As?UM2G62N|_dnY$6FM;0=NRG^2$dCu1~fZ(IGKH$SRNR{<>eq^@Y9!KoVy-8Z8VY3h4oBK{ zW%n!PTeq#d3|@R?-Wzj$M>1`ABdq_>nx)w20e|L5epr8*6;APtXW(oB6>DSro<$qc zxej}(MYWP=mc>-B8gyh&*h9=+%X+iQ9Egg1v@$)5klW`tcW#zpmK4#)-k2Vs{8DNgH=JtG& z8ld6Kg|Q$8WY@&)dpRV^OU^Y$3`ic$#78AXj- zYC$`&v2agSz_5v5TDoMWP;<+1iX$m6w8%Vmme0)hXeMG)qs#(F=~cv*rQ95U*>I8b zplMbXaw*uctuQFX+`_49yfE?0R^;k^yJ6kIF8&t##e-+&6iTJvm0@9s336jvdOyLUWy3yQGiPY3=!_8GrfTg?sDQ%#br= z+Ns(tUIwr1+Oh>^2KYx`3f^1LuA4Z#W`sOsmyUT899jt;91YBL;?`;;364ITlZHfV_g4oGX|EX9~OxR+ll^dH`jy5U!<(QrKC+gj@x+ZWC zW6;G5Uc@ky`FzNgp5gYL2~)W5YnfpjpqxWMEJw z*wtJcp}a|lHB0yH9I!MhmNdv_4DJ_OKR047`-0O`%2gFU+{|MJ1fPpOh&F9= z0t#Eh9eawT^2_{zjxlVG)lK2fvfWvx#p809yopyiyjOS$EVI36%Lptj!(yrBu&+Gu zPpI38+Omc|FGYc}$MGEc^M>wAIe4VM^Vz_EBT6w%GOLqMr7SMM(eKe}>Wuk3Br7d> z^JjiqP`;;K|5Gx3*`aV^-hPX_U>hnD+y=zI^&ncp-$J{Rp<$HS} zv0*nupr%f+5@sLc0q=texJ*YFaWW%!48v3xv}Cgdo(pxiaJG{shp9$ie8`zAI2f#> zV|C{y!WGNWsvnmgVF^9j6_ujTLEP;In}QTcxl2N6OF~*wm%_NqLX56GwOk2}S#K^6 zybU+tsPtB|3kZ3L8ydshTu#6VzoENjk$JyOV{Nl&ELQAy{xFZrX!%BS)Wh^GMmA%k zJ)DGt)(!k8S0koLrgeA-*km}`SQWuDA|+ZE+prRuRR}**^r!e2Kx-*o*boaz%0sIwV53`M62B=s`{C#K6UN0!%VB&7 zik|1YVODWL#uq|t<)VzkLu?myYaU0siK$9>#<(f6&tkJrUdt;nrjs>^*el+Ch%v9Z za}CAyduT&;8Na90#P@D7%&ekBBg~dRh*q3iQMjF5Q5^AfF<5ZX@mj-p%+l4xHI%N{ zQHyFf_zrz(wKe+5(_FqVuj{k|C_eYuY}fpuak@%SS1C?fqexZz9vC=c)WP~iieZ>Q z&Ydl{7Oga*IXC(1%VH}=OKCU9cm8Lh>DN$W%|jd5$#ELFTggF=PDRRutTD>qZB_kc zKPFyk8987%QWlO(Jxocq-R#G_#%z&KaIF*b>rQD0+sMMbEE}^X^^twgh_Ix7Z(gH_ zX}r0YJ&wV%p+P#>2|%On>*}BW65(p5U7*_9-H+ex*guVDVrQl;XsylhvG6)Fk;?VD zb=!q_F7t5hSoc_|Y`KzmET!mir79v?t_FZ#{jawA(Wh+%9GLgS!j|CbaM>h+DG+%0$% z{R^jm9wx@-Ct72!*mva>hW=PvuIKse^}3o}jj{eqihjrI>wPI}-`=DPm862#DsrYz z%C(g#ftwYtnP`9hDHEfISXQJ~@6K%|h5l02y}z!PO8eh0B<&KeZ-2WVvY&dD>b&UI z&JnX85pId_s8D*kn}t~WbzsC(5{|x@92^Y?_mb_kenoX_P}9L%m@~LHizuHVx5-- z_(MHg6y_^(E2f5nI%cA|eGf)|kPJ~~#wvR`xk~-~c)rI`A)7#(vq+23T$A&eO)V!Q zmf`9EZ<;u!i?5^Qe(RGF0wSIp%nF}B|1ONu=t#Fs$gGDt&#VWXdt}!0fX@~5`ppuf z5oYLU9j($lkTx=qp>C+L3R2ld8)`vS$399GV6u?mZNnXQ%xt#QhA%jZ9iEk6YTcBtvVN3NttnS>RXaOnXYBsXo5b)SnKPy=QG|@fJ%MV~b-% zi<9POWRET0tEy^kW2wgh&5^3H?(I_90uB}|=I54MG4MC!P|fJr`c|lO=Oe%R;sllJ z+roCjc)|2wb#xp;v1NYl6^XlUzIrQLZqMe^#U%~SH%}sl7dCsE45r^9I&MzBX?XOU z#ZYaYAwAy157o@d3s8YVHgYsDjCGfdrk~|tZ>j_*G)#G+g6Km?ngFNvhI%QYOa;;M zffTgnOz+um?a-K=Z)zcRF7jLYZust#1IQLn%v_`ngK`--RoD83^EDS}PQbbGh^0_x zVZ67na^wc$@ZE|cPYdf@(+@E1j&`hw@^{sB<%f84bt!lA?&L1x+*evaWW1=i?LVqq zvSQbdZkikCk#g!cCgz?j)mX(1N4B&-L|;kzQIc*t39~?oS+aFgA|_+Nt9Y-P_$G$A z8HB2mpYLGKjc-^*3?k@F`8nTWaa@(tw&luw15QOPUuL7^FC!>9x`AoMFIc64K7s58 zkD9_?61ZR-*BR0|NI555lAj63!*`jL@uNuW43oPi_J&Q(@9AN3o?f=;`Z?PlEw^OD zzmdWkqbTk@PrO?O!+bMYlD$9zJiAj*DqF)dnKQL zJaq1U1bXW@1~YxhAHfc%5Vs<|jeud!r}g2iD&@Zgbv9;WV^&u8CwZ;q8?tR8z#3%x_M1KUJZvX#%Uzsr z0=(|;E_9ZoJJ7DVrM#YMzEV z=3&EgeqyL`8t)7FW0E7^^rn9c{PbGCSo!hW{R^gzbmVtrczyVYyV%r%a3)4SGIc)p=E9JiJ( zqshpU-BZelvuX_oK}M{no!5j#xv4R?QjTa;KmcQnQtV>;_(Ljs<;6?E2gLN+{H@~@ zK2Bd}G%Ho82h=O4YQoq@`7paGK2yiuOY<;mlVf5urVw^BBL$*%i_flnIs@#7dJ`F&jOpJ^$@82&~} z=U|bA_-iJnG&yPa$h>(SV12l3Kljp`U{7-yxN{r2TWC=OM!uT4x!-3TEpN&eODEYZ zR~AJtj;y<=^CQQVe5d(g8F}T5_xZ8UlVH%Z)8oPmmM}<^b34Ykm8ffh$?NS$90G^Q z+yhyj_6V9c&6W|}uGaP*crr&*EBLH5LXDZanCWz$Gm4=TdAgtibH-8wZ_e>g%TrxV zNatYhX@KLJPnxLMTi(HYdvKuHmANJa8~*OOKx<4+f0u>e13WqF>O^3EL-gJEIYFte z0XQtu9lnL0X6Hy39EP9AK3wmqSmJ)KFIAGgWFEFOE9G)i7P+D&YeD3Df1bI6YihD}yf)%*e%ACIjW?R1YK7O|I zCDY98U2K#gQSX|X8OyxGjq)OOl(UqsLzbb(##2SB3#pRh?4^@_H0C9ga5Yf<`#iKec@`^~^NG_~uzb1!Tw&o>OXdkDL1 z&q;2ui^s*oL-(9kOvc8_Y0&4h>#ruIq9uAqjv_O8?u z5#D}0*Ja{Hg|&W!p-HmL!?kW>^+w)8=Z|m8EkZlElJVBMoIe?VyW{uFc62X?;aiOB z6>Rpl26*%7gJ3vo^x>_UsMA*`8D?Vmhi1Qkz2_jEb%JMIRQuFD8@OHJNTZY+Oj|*n z={;VqQ+$ma=>!&HO$%Q~Q7X|Uxrr^dMaefW&hiJe4skYEFpaLy>x8k1Kdo-+{g89H z5>Ku;+`3>u64vkTA?@$~#zp-gf`(V#)`s5pLxN*YAcNC(GcTWb_jKDT%#(tcY+ll{)>k-OLo9P;B zO?qrh7dCuc;3w}~!Q7@2~qf~AMk!c(K&4M^kFHZ3N`Ml+nGPoVL^PDBcHiH zo#nHxEOf%Tfs0N!0>jGNxNpb{(z9@puCB}3kKgDFU05d+W>?-BQnrZ``8}eN)<*t# z03$&pGs@nSP2S!3P1-tKfrv>A^hpHBRt>1{e+yHIPj0>l-~d#i~AunR%lh-`v%QK~;Y)wMJy^`Fh<)kjUC9 zc%RiJ499SfhjDimx$hzj$vfh^C2Tw7JvJudRql}JwBwy7@l_ucD-(NTAFbVu81D6k z2OzDcc`U?6d99Ir-uZc5OG2V`B>Zuw&--v$xAz3%*x_+hFy(Rn7K+$OA}Aq8(u!UY5+4>~A0 zZobxyo{@yjgXG9T_D&veE&tgk^daN+JljjMjKCZmb#xq z!K&KDpS&jSkK3w>py@2+2WOpFXd2#{U*NsdQ_P-ZoK+iaZ=q}G-Tcpn$UgA%lAGvl zKm6ut!hKkiyrHoi)v-Qodd+je$84aG-(AuB3kK~n{l)4eb&wrMwZ@<R>h%!F3ZbMQ#-yJeW`~|3lmQpx0;*&G zWI*&m^!XtZF5lNOEdfpq`N{Q(3O-uS`-LkEwi$R)&^ATV&feE-!5-9?Uk{g}mGf#a zpna8pNmKvkQ#YDRxz(TV5U1$NFFyy#M9S^sb?u8fITzOn?;KcV%*3#Ol#=1_nH3(; zqpI$e)^7d$%SAP~jUd0G!ps0Iul&ZeL|QuSQ$?F_28syeHpT&$^zxKGogqEv=V=D) zsfSPQN{GkOO+RHf#VY5co1kF30FF}oOFdV95BH_+kt+(VB$PH#;JSCTY+%x}Z-6Z! zb9L;Ob#W^Osp>E>n}-@^ANa%ypNmFhrOSr)EM{}si14fLd!1QFlpTRV1lc|QR;KI zbFf3Ij&u*IHK|tAs7%_kWz?-&$JXoKt1V^vxaVJWtQ(EbXN29@xW~B7#}fNoFIOEp zji${^GUVh?+_68J1vPqyqvR#@jDOsVn3-L(nWW8dihl0Cn@oRsBJiEUrv_Q;>+~%1 ztt371zA0Dq?Y>=W}k#Ym1Vfz-1wK=Y_6o0&mLxS5x*zlnO9 zd?(OvDDiTyUfK(|nb*3EsVh;(Sc!b3=!|2FI}VF+`#8ndXC3BSu&4eR(wz2cq8F8& zTABU%Rh&OQ_t^5FjL7{)^w^&#i;Fj1nqqgcr&C7B_Pa-w#x)|PH8QW7>-aM6Az;Xa z&+30=tcZ+yVB6K1-u)TuSGK81ECiG6E$1a1u)HlUuG7QfLMQZd@<9WxC2faq1}1^+ z&$+cP-r*)U%4u0s?om0kviPgC8yMy44~Yg@GEFfa$b|Uum(jF@y|reiJtwx0Vqb5I z_p)Bg7oU$>eX~y(n*_(p{UNflu6#A~8B@+3n!7a=DGDJmvk{KA>*2;U&&aGaM#dTN zo4U`@+|>zy$&Z&4KTbTbvF14ZC@Cy=&9(Nr3p}A#RWztU=EG=^Ox*JTSC#9Y#$4y5 zGfP(skXL>W^!#&MDaz4e(z2`LzzdSEj;#kNutBH6Jnag{Ins&W$gfwCjx0)?Ul`vs z>%aXRQPJ1rYJ~4|e}R(rMRl;rP1%OX)(KnI4DM|P8o1IYv$dqlq-?wquOw^g`c^?latoEV?;+q#nHq^9X!dexEOb^D&V7=q{#AtVxy7(FIgA+haBp9tj&<5tv@f} zgh2H<*o*wzuIFIYlebD}E!7(g@8~5c2*1*37cX=+$_(T1Cl!cT1>sond%v}yQ10z` zG}Y%WTUady(=V_h+l1$$Ta|o&#XWcTmQa=q5Y;FTreP0z(OZ7MWZQSrz`Xi}a&O6< zJ;Q;MPacjsxd%QQbFa6`x5Jfaojx{{ry6ZHA~ z{>58sMz0y2H8DZ;?Gu27W%6GxDo15;((*ddba0Ic2@t24!!^$3Lh;eZO9*sx?fN<` zRVGRml>r@G${lhW{cjhx{GCJJRaji}zx*xjA@>jCTv8~;AH4am7zcl2_K2GRss*}z zoxZMEeZ-tV1W8|zk)^#(%hK!tPxj$X>i}W?(6}f93Uh_1dR4`jd(G3_-93wPtuMgc?#0iwPFk}Gn!%xz(A)wpww%%?% z<&+Z39I(fFXwqVp7Kl_K6u!irD{2(7*#4kxNj2Q9r`6TN;i0HpUX7!isAf%Eo(BW= zVUsXlcQW;Lndpfz&S4M9YXKN6Z5`uh8>|!$Pi9mmpf=dg=_}*6-ScgIVHlhTeBafm zGY}akwl8Ln=AB)4SzMD3k48_H-A-o3ENR(tpLnH6H&3AqNIdscA}lW)W-hqZA03Gu zA8d7;*v9x}T}X4Z3(^?^p8~4ezC%K}ocd0A4}159F&df#;mp$h)F3{&3_-#H&Jzx1tZOt5j~>!MWMZ810A^)Bxda`+7~T0 zKALH77uVz@IwE&Qj#pe#XhLecFS>o55s}E`qiUjR8m9;mRSu>>Y7qHStGbR8_^|?- z;W?lgK*5ir$aQE&IIOJJE<@TGk0~KAYM0IUtI?jMr&6z60{12zBcLZ<0(xRZBJabq zeodJf8KMroT}l3a>+I>yM(b&^O1%;ZtmI54p}&}c^!7ik`9&8r7h zwY};k5isJEB`!q@&<%<}mc{KIBEC|etw*I-m@9mR` zN#LI@`E{64@`8vts}1ee zEyu%g=JKqI#AvV-e**CQ>IB10dKXD8B1K_9YgE55L9Ev(yw9Eeu#jc8P?#r7)RyC$ zN1*E(9$Fb7f+lh_P{D|`-kQvpx67~6;p$!|=#4CEeCVC(C5a%=U#bc7#hed&`{oac zk)et&iB&$=GPalswnC(%ZkC@U;^4(n4cV%9LYkCL&*B>1VCS&doIWzCyijKJeRyr~ z9dQWK7uP4RVt;_cGI@O)Q0t(m2_c-Iu*n;EdRz?jRgecqbFoKhuZS6MJbCf8V~j;M zMn$el3V$6w?kjHzIET+!KhAfx8izD2B*q#q*xq;hmQ@?Z98C5k+Bm+!>?Ul9>5$E2 z-|q49lCkc!ENznC0)hvw(m`U}&7L`hbT+M6!dW;BeZ%%wlzF~0DL{FAN|JxiXu}H~ zX}%xexBx5cA^S1}3(AV5IGp$JZp*vdmtue?1EKSsU<%r*aA^hl*dJ@2X2*qvfWykk z4kXas#sP3$dW!x}{j*Zm>W;w~{Qi{0`bUQY8i4G2|2Nsyy4-%eoyz0hK0XgvG5Zqu zs+_w`IRiL1!Fs>k?z1*A*xn$}<#M`?`Rrvh4w}Yt@FVVlXsl*`u#OimXEcRER2_H) z#~Mxx88Q8>zOzuUCy|9$Hm6E>1%h@ErT0Iy17w=_J{fjV2)8xZXNL(IbQ*xsn{EKz z02;!%rPxbSq$NyiH-9>cQ5^lDAaMEpAD_;~9`|YSBH)xMSitMla@3>3#DMs-TW*Q9jKt*32XoN|h`$x~49yh+ERhLniiw91 zq4zKw)LK{ur?uAV-ZLwc*}Whz)6SsY#pF5V0~|iwK$orr0oTzhQaP(xmk={6$Kl+M zlD|6kpzrdZ!Zj#1H$Q#N8tU#aA<}XO>TVl!cgG2I7s&so&iXZMJzA037RZgx9AP~J zUobfDwqsEGIL|#3to(8_QoV9>fJ{`k+MSdhU|1u9-XJCxJN}O=>;)JUlN5w*UsIhb zZK)$2DnST|>WaIQs)J@{jAhICbxaLEA9U&5EjkK<7p7}B?j6fXFYcZ7SLwVGd7!hO zO3JbUpEd)}_fP)wSB?}x7Oy*Q z1!<|sDqBrh?K#{6K$=qUiGNMigvP24jg=jYHB{|vto9_m>^o%#PJ^-{%${jf$B*0W zKRg3}R1I5Z<`KxgLm>NZK-m}EXRXxRlfb%3cS<5_tX-(ftsm3&HE07z2v}^C%cvQ# zuaEA%WrB82196^rAnBhib{SxKn_|G(0OpL*sj`ro(xLLOh76`F<8BiV`q zGToctbP$CbSKpdPo@VwCu}4flY}$w>od5H8U2dGFLG)0-Id_d7z-bU#!OJ7y{29^# z=Z_KRO>wWRzjGio6c%X!-JzjGRe+&HRDhwh>Xc^&VlA@8-^=w_X&3QcT4{XuL)6eG z8l3|BJo~_W>{*@8$LL1(L}&ZPEwaj&d#QK<8@xu4d7;M6Zio0@c;_Dj8p=?nqZL%!u9!dxH&VOeMG}8{z{|x^@|F?~R z)Y+;7C=sLop#SY_C$)XaZs?1@$GtF2+)(UyA0!{`gZ$YjqiXN0>#_F`fMIg-UI{(e z4!t8?4{sj7)T{l(Tonr)fk1-z&j^G96+~c=G&2ZPi`)NupbnRfg9rW-sLLZDP=|Ct zpc?&0poShOL}IZ2a|q?Tg6B-QHWD<)cb^4;$?G!L-E_u0hmO-o5T~)pP@ES36{joE z9M3>=44PqT82mlQoSx^gO@z)gh#g3SKtURWBcws(|D{1>n6K>Y2y|P1p`UI9{5>Fs zIMNF_F`u|c*P?esk(0R)pS9DT2WNN%*yG}0kAtNqg-NVua@#z;jst$_J(xZNL~*Dj z10qa!_g%lYJ^vHE81z9i>|h*NK~2j;UkA0rz0hmW0<~*_+D#MS1rRTyclknWnb$(- z!Mo~M9w{IRf!wX%dorMGQ7ZOp6M4|+o$GcoUT53lwsW*d=jPbGv9+7LNjkBf)eg82 z8JWqzu2L=0i=}FjO|xc})e`g312Ugn`}m$aw#H@B5nGH`R-}uC7~y#RtWg;$nvGmb%8m57uU^99<9Qnl|U= zCobKM&}|)c+*%aK)u}8$W?9$U-y>t1?VfDfn;`4ns|)he6maXRozx6&K%kl?=)@vu zIFI~V79P>Yvb!QDEEQ&g5&aWYVsY(h#$>E*?t#q1l)haLc3cnJf1D4lqmHzM=^maS z>U2G++jb-@e_z}=g{)eEJ+ z^!CFeaX5=G7pXbvJg_b{FL9?#spmDc`q8Rh1mJT4uXrj?VX;I?$RzBpwuVT5Kc3E3 z@=KYU4t$w*{AP{%Wzz3MJ3a-5WgB7*iayH%nhC#}GjT_JxAQ0SMP78zoY3lMb#n<;GY0k!_inXOW7z8}00 zieI}y4@n}MBZ9d#V=54HkQoezK)m8@44B3zoHdgKzUriDlJ7v@`8vU$cwxy+UYRBPLY_+zFp(3OhNK*jijw?I|87G6L3pagsqLeK!})ZTSkYIC5m zt@Z2cIBh04Zl|k;5oM+|e5L%hrZ(Bfjs39#RNag4516Mq71yawB~3mC$qXM}fQ||x zL64cxH~0+zLMzd%)#L$Af=Ekr|FLLp@8UC0+n@2?FLbDK3MLo`0e5gPC%#;6Ku7ac z+yA$;a3imsN#a*03Ld9I<~VwK&TG@W*8rU30u1393$l1&=`ESruf#*bc|%2rV5HPR**HCf_7dKm&vF?WnLAK#z*;Q0?7` zOLguT%U?F`(ELxe}1OfcB%xr=nWkK0@^qoq*cX!s_vUPo+;uf zYdhC0b=Ste)XpF8b;a_as9gf_-Y`t|j(&bY9 z$mkXF^roAbE~gq|gXsb`!Gq%wF~({<6atRR3S``!WxMNd|Jq(oT4nY|)pD8u6E}LA zt$@5r^h)6d0lu#5Cjg3LH~?`B0eG>dAm|hrr&$C)0AQko>?BjDpk$Ym*||R)>`xl~ zcYn&nkYepD2tHGu!e^)Tsz}Kw?~`{mvz*7qX00}ap0;o)FBYc?uz=HSbhT37x>koiX8jRrT=uSPn3v?z5 zVYR=2(%GnQuNJ3?>aNRMf&sit&_Lb1Rc=$+JW@jtz@DQE$z3_8l^tvOXzaFgoj}Fk z<8H)08uQ=H{;m&{S3i1U|6lzx zjoy!=#7RN!0X83CpBbD0btr@vcP?ZfT>TENOo1>Nk}Ra>S1ir_=cd;<8-qD*LL*e? zUhdZaU-rCG1r;sv*mUFBe4(J~40VgFatTytYd8L$ud->P3umkVVE8Ng?_=8~(~)(I zvjF77`T`Y#2kq!tXh);Kj>ZId9Gp??4j*1Xw1Wge!2h=K!7whzPdA>PdH+m0iD^QS<@MK?)U?qQCqtOn|(hQl2eQ!!Bc1a~f3A^i30wecUebd^rRPB!rUvCO1-gm-X%zmunN zgX$%G)eg*Dx4pey%h8q5yUupj2Xp%l6U((xv-5k)Nle{IY2ISH2Cm$0i@mv{<&JwB z`^I(e=Vx`JqZR#`X1#SE&63FpTMQpQyyR~wPutPXc|ELhVhAYFUV+b$h>OO`se83P+t^ zRaC1}d$sIi#?}ECe8_u2zNds^8=9JvFMMa6TxAOn+y6rkL;i-KZ$d0Ui+9?I?1j`w zdE4d!Xtwkkx5d=4C^yJmFJ!U%llW0D-rdN7r6Y#*-x1xlp$R;mv)R%1`9kv#7ash~mcxczkZB`$!P)~HUI!^78#r=)u#&S_E~rOce@ zTO{KJ;b-Q~P=VeOst=}GHmo&`Jxn))F7TlxZH0+#q+q3)En-tH%8 z2ux2PsjBg>R;p3P&AtYf6-Hx9fBQrRU+LCHuK0U&nQaEY+kj5NB=bmENwlz6PSro< zXT1Llqq4Ro@O~lNb56j32225)*6LKBdzJ%rJl+NiW#qxelPKLZt|d~xOTq_WQWn_u zVv~B#^NBBdn|H{uCER^~JJUEsIBhE&iAF=89kRdXH^7o;^W|dMvSU`4TAmbEH2Q5c zE-LLMzgoUgUHL#dmQj*detey8!&;@XD3r09U<)KFNUn8Biwdaz%fU58^@H_}rY=@F zGw}r4Q>d#3%~lO%$=YQ@n`*pe0u@+FSCDzF6 zSH@1xU2GnQ>LLB!`yEgf+yPa=vjlkGUdE#tB8#>+A@Q`5#iT((!KX*S9T#u}Z2UO_ zn$9<)i*Gc~;)aJ8&mQ$iy=;?}_`_$IyxfLur3b-|xF5uQ;0k>u?cKQf7{*Texj?Bs*yoQ2~Srj;C z#{g@{M#W5E(rKPhhHAf2CW1u~px^+yqoh|3mjA1}P|IEM1dSu3^XIR=)O2VTLC-_B z*wYnp@%`QqYP1f^c}h^L?y`I=nASW{BD6?*cqznl;T@QUkTnz?kV0S$pnUmnVy)}# z#uCXWPRFf)PfL?G!-<YUppC}IX|9=!mFEA3W`by1@n1pc5%r~r3J9DXLk)nKO zy-(bVb{Ahy=4y-{9{sSnD{{1PX&qSwi*@D^IkC|{UUJU!fmPnzake|QncUm_RX;tD zzkb~0T)8U{HrPJDIWZBl1z`S8%sd+ls-KG|Q z-*Den?UT2qxFpRD-#11r#*vOJ>)}snA@R01;?uHQehuGLAS^&xgqvzZCblSBC-8UR z4TttnMU%j=9EjauG}{~Fb^1XWxe%l?{H2yxjS4stoDk_3hDc^_U513U(iY4U0IkV^ zAFvq!^Wu6)|KW#n!#E2_&f#bJ&tdER|1paz-jH{n^#rkY%3X{PG67v7f$+b`km7nE z6h+YgAw!g0tmfK}iFV;P*&RC2SZvm|o5L3qt02=6!+*vm5o>XaqJV@wqgLA>UV}OT zVmdxK43k<$g9?=2+u=#N1H4W9(+lw5Hi3vDEn zbzi}~FRo>;Q2?l#U$?819>l1{-J|k8r#jRE%+N|{4@Wa+3mu0y!i^VtZ_N}!{?*Im zJ0rkIIerBf1{o=nf1LVP>7G|Z{#800;9tG=X^R5(;1`yTyEMVK^{-I2Eru|;9tcC z#x%&kigs_Iv>%ME9H-uC?!a1r7y;oLcf3!F3i#vnv@9CHN-!trIonxJ%9i}rJg4>| z5I76ZtPBp2XnbpCi?U(31o9D^+q2ygfF2-(+tvcu&nAhM-(>0nBed5&*pmYMbr~h& z9LPtUEG{IFft!&6{t27}eJ((K=G_8Jfa4M>lCuBgXs#N6kzfn@O0*@@fX^H3_~ES> znhfB*_L+h3Fec&khqqOaulaF_V0Jr`+F8lp)(G&!+9XcrAynTz=q4oN?f z%+QJCudY4!oeK0Lq6?CtoxkiVbv-6-=O_T%ZJIhV9lztTj97XA2ulhOmX^hf7ha|( zol;BoX$*v)+`q3B%v~A#l_(9it{*7-sJtbm(02N~+=p}-z(g{dsTvk;d}PNF}ebCmau8(1MZ}uXBrL$x}qnI(kvNBp^aa_k@D6#`Ms#VC!<#>@3p1gMEJ*d z6*gr4kVA;;PXIs;p{4XBXF_J0z0S4-?gC)GW%|kc)#>Xo${}JW4YfC(wwt%I<91Sf zaujz`?(n?~A3v0KF{mR{g?dKSu=4s^ZpI14&d$m1DpKqOX)B(0BYI&Er}gz#jS*m2 zG*BouG~gL|ONz#arSrhMq43AMaiko}SS=!q^M@acRDo>0au3mJ^+IY?Gi2Vl^W`t| zh8)gcAYeswP}9CnN$j77-TT2J7aQLQ0cpSIHgN8eVK16?)-Plc2>_eJ)~`e>g#udE zupi$tkYVBde!Nc09K+Q!z}wVnMb zVr*(kTF!L~bbJM49hUL3IA*9Rw#+Z@c|=O5T92JI!>j9mBx} zr9;eZy7n8KO4D-sQ@y4pUuA`w1Mb?y{1Zu*Y0HdN{;^in?yBO0Z7u43ZT!n>HJGemUV=L{lAEpeyB|CKO_3##!4<%50MQ4noN7WMt~w;*vH=k{L=Awse~Fg*fK-9}IG&vYVHjv`1Dc5_=n*6S zJmMExa6trkk1}JE=C;U73(;%?V7LB9wn0TX?neD!B)~(q{Tsj*`*A(UGpm zxKkF)dvYMIx~T8)C;G}r3>zfI15d)ZcPJ-)HRA56T&~igwCPAVtYI<(Y=jW0^Y6Pr zZQ!@jHN(nn;TE!2<_it@-v3PowkrN118)=n;>wfjlnHc_1;VW=B^R0&t(=C4nrYT@ z-k>7qI@Jv>2%7`VRC&~Y6sW@gD-)<3cg_R*({&zPJ`?v&b}Q#a8Bi4T7jimPPS`sE z#`|>Z4tvYn-zfx|;!|MCUkTDEBaX*`m?~v-agZdNfMU*IXZ43ro8;j-q-PhyKbw($JY&w6D_XuM+t9Ck| zYNrFLc4o_1{Xnq;v3UyoPEW6^CVfjE8XYak_35#OmxA^Ba&JO@hbi*dk?st{Tl@j> z8UVx_c!|S;5SP}~+HYguoVG1_M_G{9v)D{jgn7~QgYZa1s!r((qlVTZy*%=u^XJdg z(P{}yl%*l0J<~2#3P;{86O4$du!q|@Z+&~c#kRH|7N>i(y?ne}Ys^&apA*M2a<|+e zId=4}Baf(K>F#^Q88TF{&e48bW*BF#+Y?y0>v3Jv-X`3-a<|ULH7|LxuPttKZMSb~ zeaSh0w?WaUL9S{tUpUy)*n6~aH!65<>SfXHYDXGszQ0a(i}rKZL6VZA&==_&w%kf$ zuCrtBn_iTJ|36YHZKu|6mCPbgX;d9){&zUY!hClWXHa!jB|~t9G_v!m5@MxF>ob=| z;=Xz14NOn~`_`J0uNXVN5|N!*R4p$&=enWk9Tmnp#u7(LpW98XcUBEe4ZdVnU=nPV z`#CUX? z8=qiyk{+{bc?=ZIUVLcAz^~e3U%wIZ=R$1Vj$kdun&~}y;KPl<2q2wCUv+}6nAAC# zrYJUkaDvn;7e_GHJk-!PTpdYhy%QdI>8|{sXxOW~n;bkmN`?%blC9 z?r)1TZwc<(t(!6rI8?H-j}aQl)T09+r38Djex zMQ6D&kuDM55f$|g_IB0)@|4mb8x^L3jaA<)PPZtLI_Yk6u=ce?$|+?wZ{szs+9qKj zZz11YMmQ#mYn#(4eIvp({Y7;Eq#syQ=M9etlL%dCq6 z_mkp&I{rkU>w-HxIc|cUc0TPpTJqmVXj_1rY%*>|hzQ8eC)&}o_z5lD!XQa3A7O#{ z+5(g|o9!kc7N8c5;Wo-I0pe|5dHw_bP~?ZNxPzz`;LYv*)~*R%EDZK@k%V=LUXQW} zjb-Xk>36S_F)k{t6M6JJ_&I<4IQQsDWwVkZQ5FyKt2E2A@T)yZ=UB6FdXlakrhLCV zMv!Vgei_FtmFS{MRCbidQ|bVW`94)35TGx&4TFn7iqWSRfy}VH-8zA;wbpfd6==VM z$!;XBebzH>!nk?#fdmpQ-GLDUhMo%WIbWaX- zkyo0$UT4fALFKtmgvM;~#iRBd95*`~ET+&PC;f zV{qo2s&`Qqx1HV#p-sHzVpZGE)J@idji-?gYuVa^ToU=$8t|yI8@oOUNXY8wZ3)f;=*I4( z20%KK&47@%0)+fq;Cw>kE!6}AB;a`pu92ONRU`+X3ZWbToM==5a3Vj&SK!+4Fb#^v z%FBBla!+NhgbN(s#;#8DNCU0{TP#?l|D`pP=M<1Ln3Sp+Z2_2U32Zm_uT;(DphZ2Z zsIMzOema^v=(J^30m{3JRbSkZxggZ$?Juus`Tb2gU#3=W#Gr&BJFU$?!NCOzZl<5; zg8TJ*^VJ^`!wjS5oiD00?^hV(${cOq0sh%kj4|fg-<@5b1i92dut}{$PsS2r;ouX8BK1N7JQ~ zCCKG!B8>px1n`slbqxRbr&UqJjne5gBfuLU} z4a|fif6sXs>2}diX<;6;lcPdH9Y`ID0G5;j$#5K6&v9ryUqkE3d?v8?JUZdZv+PfQReYrR+bb~q8iFye0gN&E4q!|<*tlqCTl(X~#m!V}RjP>>km$BR8^}#B zP5}D8*AEC@b4VOAzXimh!c@G@ny054C<blS0 zPBbE3`f6{hGtF&U1A=n0Ky$N(G`IRc4%7#>bxy`^yhrU=Pkf@#{`eJQN=dBbT|Q6a z$J;dLNbY^f(|LmOurIQtis_de{Q0HjzaKr$IIr`1ozHPR zkK=g05mCp#EhCwTsF#U|dg{c)ZPvW&4+%qr0TJT69-_ov++NF~YX8$S=#cJ7X)jzA zi=!(ZV*{42IsTRl*Bz2)oPVC0^-eQe7gdKAeu{Ww*N^SPUWfEf+CPG`@Cg(YPDnxF zh!hlsprEkV#eeVgq7`E}HlJ8I$n0_b+Ha+WJ6tCm0`mxbQ>w@+d3VDF$)|)-w!1OV z#@!DAZM>AuVVe;}#dDm<_uTZ0u!7~br??7omQogqE@hDXvwl!ZxBtq*h2XNlL&%b7Lkt(!{uPDxd*G)2#TqY@ll} z3IWR<2FbT_5X(IWe%x!#-Ncu!!33RfyAkGEG#7TIbCzeX4$CPwKj~=#%pSeB7U;dT zfcN%R&fV&lJ#zjPFQan}Z`9zLSB9w5__;?`CYpN$LMMRTq7%gNQ^5KfOQL1s;;n-L zWA@N8F!T~GOhp%_;x2ro;~(R6Lv^4$I`3Itlh2_YB#E%I?yp5M1 zp!c@cRue`rmYOhv5lMlG-_#EL#833y6Wqu??j>OaZI15N97UOI7(tU<|2@ZBxIw?S zSb8;l^rG<5i^7LFgpZAX!Uv{OWcfU)_9Ke%SVUjYt04R`#L6pZfu<;51)3u5q?yc5 zS8!aG^vaOB(TyIIn8AdSo#|(+RRpo-eFY4Tg2w}U4?3N(!M)Jd^;+kqwc$+-?qSZ~ zEuv(oY{{zH;ZULqN}!ZRA-&%{yp?Kx*4sA+ju4thCU`fdcJv}nU=u4A@&k)1G|%3L zprl1%6;4AHEoB}$4eIuf@cE&j1un~1fy=bvG79u+;0I761zq12y@R^{(mcZhxY4OUjNXnQIQ19(*6WKdJXC>74tm(X=!VW7`b{7i3b$FK$Z;>xuq#9p2cM_nQ=FmSr(wVkt9GUU34$pFX1`Rb zUFYJt89njCg^N}ZUzKJ?Zl2NfLe3-YoJYwv+~__~!M`6NOUY3A*d;?+FHnKXClUfM zLYBA~as0dd?*gPaw$RmVASm}|13~$XCJ>abLGcCz<=L+qR;m(^)V-iA!xeMryFHA) z+aUDa{`t~|9?iBd*UIYu*SQSQj!W=?svJTyj&_`tiD<`xFi6F20Xi|BG!OOxTR8Kz z^)K&6uRZR%RCHY`?z%@&%u;sdAQc0AYjl^Yl5IW%rA@#AQ)+o|ZcvY6f{Z$a&!~TS zGjV^7$W4=*@QFP*lJMeJq8Gmsz4*OhfFz>CPMC~lcEL!n+zprM=Dm#pJoG*UBf&~R z;HfeK(t!UunpsEl7By@$2`@)VZm(0*^1~NJ9g^CP%ZpoiQZ!cbMsa6)1Op$wD>Zv8(q2Yl<0+s=~vpe@1yA*oYbf@ z-#W;A=!sUHX%i4=xy-YPjn>z`SHfD{8;XPZ?sFhcv;&ut}_&3%&2Idm48`t-DB2qCJMp} zE^Ezs($f-(2jEbyW!bg+I_rvhaQy_{?D&vG9*q3Yu^_nvf*~^ywJ!rv`&ubBjgbsf zuIgCEs5)GUxz7U&5fI_QATuc7f_R{St7d@ipoMS;T5j7Txr71>OiZA!BS=j^dQb>u zpFaHX_4Qnj2EH7c*ieeAndv(r>Y#gAf7ze1?{rm)YOB%>cw=zEc2*tf8`N7t-;fNy zg!hlWLArl-Mkp(m$&_9JOB9{A;%C=nb_RxBx5#^ZpUORuOdkh5u4mmK|BdT6uLTct zlhQXf5%Z;Dt+Xq>EHrvW`={HS4(}Ek;!w1Af$``_22BnhYiHhwCD3%!^4&qriBN>a zSduahx3UvXWb%rQ@yy{8J#GH!;SDqC0#9l|TMu?G%l%gnZTdq`>XBEkKPc)rn-wxE z)-7<>?HLbtjo!vK9l6-)!<_p1ph6K{sSfuR$;f%yn6WE600$q09IA2`M@N zv&-MVi}a!-j2CmJshP&oCGUN?9G#1eNQ3M(;x!IhPFFu|H&p#2v9414?4F~0i$%tW zaq-xH)T`OzhLxe0&Rn{@KMZ@Gfw>IhjQSULyKn<^7djzLme~7S<~TwVNvOiMLn4@ z^kfN;SfC!`wz~^G+1QKIo^pVWL+Yb*H|Bf@rGLT9xoSFId=ZPIinwjpPEF7HcukW~ zaOa?cJ0~4SG+5Fe~FR!;CD?t`I12h{6u3-ey{L8;L9Ss{^>c0f2 z9FdeO8Sx}#RDdBB-@kwzwsh?dCGf-n?ZD;o^>y0X0_@RjN6NACay&iv=yhn`QP}`T zp>SO}ioY@7Yxi$<$EiJd#0a@j8|6lAlp9mm=SH}LhF87%*^EfromF-_nWLf3Tpz}2 zIWL&-Ul)#@^&E1hi;J=JP4Rv_J6A1*f@F|^-oK_2h`2wZb3Oai5lQL;kfbbtB-MW% z-;Q=|cE=OP9cu_Ps1!7VN6#;}p5CRxZy6Q*HeibbhUrdJYHu8d=0jtW3S=8y>go zxWMc)`}t`Fhj=Q{NxsOoTX##1ichb++N4qJdamZj42hU~v#XnZpl9gvzC(oBQ@ zU_(>+F2|!qAw|io|36a9=W=gmHw0EJTE3aIa#wzS7JRXv-bHI4)~W# zI3E?!USJJw4iy#ESV}4Hd|Jb0m{IQHA|4@Me?(>HOxgw3$BhLI`?X{~`E;I`(@j@9 z(!aBw;n%NQP&#te6~( zd0btt|69WJpNM*6JKWyP={}xC)ZwC4p&l={VvW69}{gJyT(LdW||>prtxoP<~4wV z377_j`pk$isU$9UCl{?0X5Y!ES zq952IRk+~-jMnL12&aw^P7&8C2t|${6gjF<QJUk;rOR=rq-G;CN@2II#qeTD*iBj0(|BZ zsGgib^@Ng*Lo$3myJYx$sB5#?c9;}*CZ-unQ_z_Rj-2_$d^Nr629qh-$7l%i#kZ69 zHq@BMVGD2MkdVD8Ls}XW1V>r51rU>COKnPbV9T+22KtK7rXG>mA222(D zSKK(9hWR>4?3e(>cZIo++`O8Hqy#KA2QzupQ(TF0SS);iAkp`)0n;&yE{FV#Zl&D< z!Oa%>05|6#A@y&#IbNHR8idsUsQ^+6&S%&Vi;b|vC*ISLcwj4?|F%_ubBVWbHBcscXb6zAmxf9)ED&RX5*ERd%R4PJzx%-e}z(2fpKa04q_Y ztblWiQ3^hhAI#T?SYM{7Hnfj-bbJB}ZoE3k0E#g5bt6dHRujr{OHC-tg;Ss`N02X2 zq&ekz@dJWEC=3x)@|VljRPPM;&XD{b$@~SFSUZv#jo>zS4<}YScJliO9TWHyj6r1s zh-VWOf*&Xm{NRo-qg80>Issb35TK>?msNZIftE76;Ks|~#^E#!x+ARG9bwg_fK~UE z|8BNyOC5xkk2tD7z|V#9&Q`#`5`}+-TAfq`U8f@G8Vk_%>Udza)j`NFDnRz47{WwLoP6gR3f%n)ebGAu)zCBy1sl`RJM_g^?4SlHPcR5-MIN6vV z6>%6H`!P3ks(a`}*ECo{F8utm{KcbQ&UBZSgnYgeX7adLk<*l({gl->c~lKgzgfY; zbhs*yj`ptr4Da%ir~l;O_&3LK&%vc@QkBW!5`*32$yL3r^LpbxQ8nJd&XxMs`?l88 z7a5NWaZOgW-Wuw z3X^=7qftC7wS7l1!Ue~(w=Xn2ek9~FwsK$DtGOl9*K1MRYcUFE*Fz8NGebHeHlDq5 zq!T3kY6|x%kJ$-Cz9^wE?b3CKKc>s)9=fmmvQS19%M6f5-w`*`P6fXS;*jHR#fPmxTw%64oaWfnO3J?N`?5=X;G8*|=FpM&vDviu)(J%n)k{b*!? zNZU!at_ErrU8fH=rHNE(WokaQuM)fsr|0|`T65I}EVWxr)U32yS&y&sd_Ft|FIrQE z?KI@b-vP+cl15aUK2AW3j~X)<_of#uKi+NCs<}DOjcW{(=jUT>S1&<3uekcG4np_%YwHNUoHfyn~j>89t2T6 z5?}ysJ!q0d6BQ74M$`|xdHg~eT^Ywla_H5y4vU39!L|JRD_`I}#U5LNYC0X1+G@Qc zufFVLw!~?_N2qdhruBf%?lsQpm$T|M)F-$*u|zxxn5US;t8rUso&gCyXuy`}0i#i!>-@t)-&D9T3MJK*QSCoH)ZF(6_CePvIffW(E&c;Cc9uCZm?# z?6J<=#H2AOv9 zZNRsh^B>e9>j|~Yx$$VKm8xvu*;u~n{_^wzS3zd6e4@WF5x(P7Nx0S7T(PQ5UF#$A7x=2N7YARNHe2o}Kq4EQA`pt? ze`6bfBgHUytKm>C6#CbqTw=!(cYWc8!o_x3@!Z>lA3ttf$6I)}bH1_RJc%qza5&o< zb8sl`kjV-T1|ewwaF+pglDm$3dE?=4(QEYm0hFm}PT&Fezc_**Qd}4ga0g2l+nKD` zs4F#iWlb6k!EhZZ)P?&r{;{8>h}4}!gw-dgJ;rN@{;54iV_1DKM?3r<+unvNDPI~# zXZmrbG9sEg(3EfiY7UhDs!{%{M)|LA%cdtOv3M=^@7fR{Ht4N4{Wq9LNvHHa$UzBE zpRES+sL@!3`uP4peY5sQHr+D5u1Qey|1!RuGq`fLNoSOUr*LK2g8|F^t9>@rWob~h z8rwUWetE=JTMc~`d5@Z|L@}E8Py7H zPY^-8ym-6>lFxH(=Ux7%^B!8?dE1K>>a9`LJpF?Cr6;bl6ka_&XJv1GJ8mjwCzIJq z*Yf5h<|Hw0Fa56T;2i?w_r5+JIax9{3LxHp=jXIif!{4tEER})bqyN2K>*q~UT>IV5 z*JKaWBs?#_yl}CEqdujP}0j&4$_lDnm-|xifFc*4>9#Mbh8!c^VbJ--ch^y zLb0em?VZ;%=cs#~F>bV#OEZVT^|MH2hj-;El2{p}XJPk(V#M$!>z!m-^MEK~C2%z# zvHaN)ddL2|*m-d!OEX;ZG=}8a!@rmPq)4qRzH`-7#M_N<2;y6{`4*HDvrtZ4QKR1U z(c20pFoafcQ4rW`jrdl=|IZJ6mn;Yl5BYztI}~U;Ya1)nZHc4wvyQYwa}%@U?@%q& zJf`@XXEjKUz54>`3y+aVJrC`@nCjGEagOp+dw&DKpS>NYH>aw$YW$9oS*Y*IKz$dq zpG4eiVr1&+!<&lhzxca@HxEuX{}_ImBi#BQC?#nuY2+rtQgE&0KVd0(sAUYrVGS++ z6PB_b_X#0@=HPVD4WPM58&K_VT*4|Z0%Cw@eCz2zI3OGF;{TpCG&^Dn=<|QW8p#0w8@Cob!a z+k8_rGMYu}6Hmq+Bz>}%t#~ntbz)6pQYNKm%Wz7Y5IcT+ZmcVpwBw)PYI3)v0oT96 z)uITl?w$Gnqy5a)qW@fkmmyF@Azx7pK)?^y0ph%)3BXl z9{4u=I^@Ju;6@6c>Hbkx?Ct6H6)yhd-9FzEUbQhbJdvE};6dB#d#x~gXnU?9SI_q5bH&quLYbvabWHj*a7VxvMU4>RSb3yY3os~ z;*7m7m##lz7`q zu!?P+S{1PC&i62-Xse?(f`ToUP>uhyqF)^Ea)hdJYugRm*+cmWw3hX5dei~G$yQ1{ z(Hb<_FGc$zN|92gCF;N|i2nBzME~oJR%4OsAOCIOjf2Xj81cZs@j?)>fw^ZJdK#p- zr$OjAY$eCuT;@rm|DT^lyRXQi!yv=vCeZcZc}AJg9^pJs5Dj7Ae`k%NSWwBZ{U5DS zNJ#RFg`sJ}I|JnR6=o$P1En`$U8%C1n%wtdnO4iCAe<28W>=$}7(_W~Gh(*-A(`Is zyY~gyxRXn#1z;bB!2<`-2n%0CLStBlF^xgmg8y6nQIMSDdg`yjXz954sneOQS-vuI{Q#<&0lbOx1eXEG7>!33>(O7q45 zu42>=+VHKdCcpgWJ0P;%H~yJ_>ph3v{zMzGYcC&uW6}_RdM@%+A4lc4K+Di#8y~l8 zHzK9Irud$fv>i8SUlx%o*OkOcDBc4Hn_(0p$3IB!w;h33(i#6shV6QapSH`rA=LdE z*AaZi4Di`48Q7jA7yqa3m)r?I@GvQ^gkNh^n4AW&pk~WzEVw_K^_k9a6omgv(acHx z?F`brlXY6~43KY1$dx!^J6~e39XJ-mW&Ju2Y^*P{_=Ivt-DHbM)&BTt*s}^2U4Z*Q z^$2rE?wuHMWX2~#&9k4wH&>)FiT5^m;GcJirU4Ip>JmjafM`F;_l{rU|ERqH&z383 z>$75H#wQ-!g@bAB0H&Ru!aJzM#dWk?>|jm;>y$6*nZqn1ACkb3FYEjJVWs)o^mbtZ zJSM)_SJBZ2`y4eFK3YS3MTU)d_qUmm4SQ;L1r8O~zVH@?4Ggezh6f2#oxp$5Lp(R0 z-_Yl^kkaf@gDhrqYp)Y->;#}PfpOyJ_E&-p<$9avYr2KIA8yttN~i_2tTVlRGVDStex{hQyk(3^dKb-#ANU@W^uU6MwrfOzt*2MG7l`&buKS6J@mI)3_ zpo{}`xA9VlOxt|37bl-jrV9BJ*e8Xn?2}PdcJ>qz?xc+v0Ykd3hV-MF^7oF>FIJ(I zCuOI+VaebuIOy7{aZ%;IzkVKE_t(yVO8;NZfMot{1{D9ln*kXVU%+Yl5C^5EiNHbm zKalKZ1h(UM3*hj6i3Fmt8@u^h499kyljZ|m*1@uvAw_+(b4CExWDSR4IU=!C{z(9P zbpq_gdOJDt4wYSO-C5;&8H?xdBh$)Bi+;G-q2vY@5W4SO{%>BI6puYO@J&wC2tIs{KT1CYjOT6!1+ty#j(Rl*p~q)^DxM2`RvBC zNOF@TpF{7rf@s#n8V=GEd?uU%j{@M1s$U20s4*2yS6|BS>!!k%+LM=SO`^92l>5UX z4tmTfTrJO{u@5LCz*9G#0m{hr8K8^^Iq(sClLp`@BegE~w<{sXh&26lT%DX_U?%8s z%pmpIm|X?~ZP)RWS61ufhG2JIVsCE$ax|Ez6?6bX3!eiJTEYuLhz1@Q(-U0x&si1P zp3;?`Z)-Y?I0u<4L-+ZJ>k4WQ;{o<{$oYk=eG|Ab#c$O;LfrqZy8n%EjU0R~%@JxM zyR3GV?|*{J&IX^S-|#jtwfRHO|932I-9FJZUg&2#Gb=Y>c3VJy55$Le~9f9Mse|0|x-I&L0#&Em6W-fvV0cmcO9CMQ9S&!IRc#0X}Zc+9VdSvV(Jeh zPMU!rzs8|6udgtVo7#8P)%sW471MtU^TVJ<)Nqxw6jr=bj(PK%+9&GFPL01&ddGH)xlVagKRPqzk0qo z+KZmhS-K`%q}FIY+%IpBaWtO5*oa?Q>gCGljq5bO5>Zu}Q9i1^R9od}aZF=rcA#l~ z>c_RX4se2L2UrExyp)SB&qdtZy3e!uTH(0k_^*0;7gp0H<>BxmiI6(OmpUuER~CXR z{pAe?qD*U|B6xy)D}%p9*4IUuibjdIWov32>yQWqYGS{|mlF}%ESj5_zn?D;m%zBZ zJ6K_4YzUaNzNgXQRA)u16{(G&5>PthnFtm?c|2(kiN=Vky@JJT zsT`kZwGwE#TH5>4hA=g@?Y3HpFYQZPWFlTCYm>ZJyf)qV@kynPM}j)Ic}K>b;aC13 z<^Gdy)5oJuUWTvt5T@e_o%iaAa5U~*8?$QH;PWuv2S>;?QF)2-Kp_cUU1;p=I_xyQ z3oJqgHY1CWHCO#md)TRQf3-KUiV`N-fT;p|Ff{Nj%0x1PWF#ZVY9S)l?tx4KXA&w* zrP0C8_Rhj20a&Pk08mGs8|4O;-^E)mIct)*-FMtt$^=< z&$!^?deT6>KM`B)2T9DEdyL>T;o3_qfM1kZattlX)IFNf{Fo=Ibtta-#bZjfkeXXQ z`rh`;d#pFaJCpg*z8MOYT0UOBMVfs&hGyx6hG=+sBo~Ohr>3tVKcij2bB8zXJxMVQ z#dRBU#>^`axpQGsGLF!hFdl(Q;xVq0@Y0%#mNy$J-N1GgHlNM&$Bu9(?c7S>D(mDb{#RZcj>%8wVvP5x0a?H%iN&YzZ$@w9 zGmDxa*0`@A#~#uNHgTm#26&0s(^*D_gDY{Y#i$m~F9dP|qS!*VWKr#2>~8V~?gbAo z0kIr82$D|+Fi!eXhhMAlL8L=g;t|of6iE0u=7(r}c4(gx^$P@{_4jKx?R|%#f^3{? zgwwMK0Y;;tI<4YPp;{{T17R_C%%+?Z0lWX}Jl6k`^^IJgb1=*)P$jpgK|fZ84@an&tZ2=TNqg2QgHf z_&|d>Th30b{r)%TqBOc)o91K3nR=3o;5TiXGXv6>I(w*OLFZlAjku28=sUd~s7*xJ zQzu$sRWt*BW)$)SVf~t`AgTA2ua>)R+qKYYr_-8*1iem!iLv{w$53?Ie$~uHngxbS zXoK#NwH^TN#)!#j3{1}NnZV>k^h1!F1c{aa;S+N?`W#YTz!HirrI~(bLB_7V2wVup zkK2)qodBKR1dh~yBzz(fZ5c2jaP~*rnBiSO!WN|9JQHAH^LGeYBxAU?~n93L-*|50(=FT<~6w@^(S`U!*3^%6jz$fo?Sz(n=(c{5%{(N zxo%T19MoD^n1ZS}XFpCHr(J~LtFmUSGU3yQx-6~L<8*HJE-3VZ&q6*&nflL9#F#*r z#d-Jlb=C|Ebt^p#??NPSE3(=-<*nFXCyDC$;np`+BtBg46klF}MqivZlm2x2o3 zHXV(7{EUm(NB!iCb^Yh3csq%c6?lp+zHdNk#ClL8o?BHTf@00d0qi7J_buchZDSTe z+xT(KJ_4w&ISWT06R^le$p^c|>#s3%Qh|%pSIVyOcVjRF+m#eU>lv<_JpkY?xXE(* z)(cEu>S?H9qy3^6I2qDvJZsm1U;gV9B_tBxyZGaVsVq}fvCl+lO^&&b(P17JMXD0T zjh;JKTsQJ0k?r(l^a-Xr?Zg%X`k#pKiu@7m?2vU?OqM9TL9%gdX3~*^0y@U!+th!0 zy>t!>Em{ebZ}a2o`*_&bzE8qV^l|=qdhv>ysAqkX=5Q1h(596OXy0s`Ef>wrm3SrF zj&J9gb3II};?iJsp6TNQI=)38N?!?g&pwERXBf5D&DK{;&I!Z92biSs^|sN|uPG#^ zDz8oR3Hn@ChTWMjo-Y(SemfZ*HtRJ1O)Ld+UdrRmCbLtSd_H9j9K@8(5&S&OFVeZZ zfs6`!Dg;$(^Ns~o43rDs6zxd6i+IN53mCa02o+a}3Uj>&GvkruaI3JTlm^DDi9|(i>)tpm^e&k=# z%NhGRk}M|C`;{)RL==43Ik$F{%PhKNItSJBRqS2-mG(n%tNUL0GtF{hGXhX=t z*v&RLK>t8;A%|1Q8R(-_pR77UqYI ziiMvAve48-^)232Uf02y#>dKXLyxZ<8(2QPKlKj>+E)Se;5#~yN{ZATy^N(;Kr5HipPuY z@QXM8%sPypnMBCbY+|}lDo*690+Y`}~>CTj%3hqF5* z@wjC|66Z3)Cvgr@LK2V518H1=71)-i^E`pr*!Vk%@3(!Z(yFw&gTd?gBd>pGIV?HAv zN7O&#SQn=M(mw<1LUc3O0j~DX>-Oob?VlI+OcgB44lXL-J0ED`*F?LPKGr-K`F zzXxY0gxg&SQ;Mo}q503kOd`Fhf$0QWv55tVo6ydO(SF>Qy zJ?rMl$m-CFUj0qap4p4SE9+2o8(h}j`*3+#Jx@?QGF{_+qVMg8`I;Zo3jxM&yI^!> zqqC>37J0_?W!Yx*t)NEk5+h<&!-BB=+${_u&Zvrm&k^IxSCW z3s6MuafiB5ybO<u|D#GY?G)^t1m{73m*g(%@!xFao~JJJG{0v#@x;de>X{CG2TK|S~i&#@HQf0QEok8XGt z)t#? zj+y~dvetj2k`LT>Qu;s1S z5yihs+58T50Qoa(=2vRLq0ec<@pp?RY+8#yM}`Jt3@Z2BJxp@r*kLtUQJ$*(1{F0s zd8O|^Iql4T>&b;DPoAW|_d87Ea=kLDWM_w$-P^p}MeWYSBc{7{$8Ok;J@HaLqA)dS zp@X#jjsvm$n@64vJ|f-Q$1Ih%so|E&Z77#@l*?2Q~5n?`2G%w6Z5TACge+V z<9(7ZeL8=&$29v7PgZ+IJ=K0{vTMiNdSafH`JWjszsBb}2K^@;d`zRboH6#Z#|sK) zzc)3<)E{#hn_sYBzGwJrp)_N(FmE{!lfE!*R+p+`=$TZj^Qr|aVwZ0@%jI-?rmm;A zI;p(hWo2sO)<9HtLS4^2&svGh`S8i z$T{bJmhqhKXsUH_$(*kr>=@1|Tw3&RUYHm+`xU+AOQp@z`_K;Ruqw|YqrE{Bmk2~(9mSe0e z`PF^4=Zgtv#%{w8jWzGvH_db!?HyCnl9KdRwr=M7#%7q+ZqT0Jszm&~@U&*Je~N>i zY+((~1;_PDOVt%#R_hEJ>CMPK`YijuKC|qKRpmsIindJ&Kfp2C%IcW~_bs@SA zJLWR~Bfrj=!;UUq;}*9}Vm=x3tFo8oCR#5D6LlOALuu;0dPc&NB*hM;M&dEYXejIE zIgI=NT>8~5Q=mE6k7?}ld1c;`Phou1u_O9Av(F8-i=-2B zPP(V4+8)_1(()voY8&DZQgghw-=O~1))xr_(!6;N2D@s<+P1#3W@9eP;O=3o4KMQ$KBaF+iWzzvbduCQ}kM=;a+~5SF!u^b0s66>N_yoDFm2}+=)6q zbWg*x>a$6U$$Sb$*Vr8u`V!0sYoAyASFnt|Hr$k{Og-mGuM2%``Sq4G=-p@RkO`xF zZmh3hU6?@y@to*pR-#5{2~yEEyA8!LcI>yE$xL1a{V=y=I=kEEVTge9R{t{HE6tOf zAwS>$$jMfU3!i|^FTzIkXk`R>s`iBp*_}Nmm6mg9>fLL} z^9_&Q_1|ppDrIZecQ`Ff6sfRvoO0jwtSdrh$CQZ%Rkuxia(uw0HTyo-&EwP({dLz$ zTDB(4S$*ZDj!S?qRanH)+6154VHDRCv#r_xY~8Kt?-RN<3Li{A)Hak71sC|s7!J0$ z(#HAAI85_)(fe3fjb3#cXcZZmn~a7wBN+RJYkS7f}Qv zVaMJ`jvHbW{XNG&9gHcj^f3QP^&B3!FSaDZhQBTldn+NgMDnCxqZ2o2tBQL|R8Ra1 z(l1~4EbVYhnL~357$(U=HeczU8=a7!!F{(_RNx$;GSGV;Da%xsT71Z}^Fsa@>2>eC@=M zLijRX2!`w>Qx2+Uz`rhw&2>@X;lx4?T%mOh&+kfog6QTXOvwu`OM!;}(O#YpCBgp0 zY_)q`Ct>%&^Uak+KKo?4P}o*uD={{qIX9-RsP9u4wP-c28&GNG8!n$XFL!LC@~n94 zy-T&5(@#7UWAIejF>~Q?uHWaT=il9~Zhe$4wwskmJ{~w==sO7)3P0!?r{;7Q(+Dq$ z#&NMzM52S+Pz9ZyV(n}a^*s_cz0GzyTF+|EhLQfj_&UCN^@upUSi7Vk^S(*>!#lSV z4PROjiDu4fQH0W+-*$z<`KT{G*3d+-BKwv-qY1V_-%6ykXky+5-N7W@yJNK>pTisx zaUt3ixLL3W>6vv89>v9_VX3UZzVD3Ze;zFDdNF{tc(0v;TaEBOx9<^IhEd|USz>VCJW9Z zma+2M)2Z)%za3HCrw>Bo^iF?4JJNn-y{IBx6apgSsGC%;WEwXimU{x~t(0ETd^sF$WOo z+~wEi3`~05DoiLoDNM?UN#4bl471sZozdULp8~=8yL5@n$lfM7Wrv!+`17MH^rG;j z9pOi!g-ikx@Ph=1*<`PSKeU>1S|coEqHznuS{epOdN|0)Pg`x)7IIuZIqkSxdbZip z^>DkY<=tBey7dXqv+m2bq#5li*Ycm@eNBF@q1-%v`3+k7vy)>~h5By)w!=PeaG}mo zul*hJ#!qA{j=AYWYhXJFc~3?;8$z8}nvSsx-eS6?vM#mLD1I zK|G6&ib888%MjeX7-a~&U>(X1xVz`3foCB16xQeLkX5WuKK4HBg>}zC2fd%$+;V3w ziTWILu+pr#eJ)VT@E~NCevwvb#dc3Uo^yiaRoYu-G!Jk2{=-*IK=HMmI^26@vzl1& z%RWOQDue5AOh%7OZ6L3loeeZ{rk2l|@U^DcN?OKs^A3$qY%(14x3E5GLEChhGFL5e ztltQpmXhJyZnTNXvh1GWG1e4qW1m-WQX@QeXAMQ@35)1UR7S&@xfEI}n;d_>lg<6B z%mbs>nP48*C=3!;dBscRbmvdu{{M>q4y-8?XS2mUtb4u+{|5ta#c^{ zDv4I9t;Bo?goun`Bodc(*nkl*0m|OgF`(?FJU@_+QKm|#Px1ohp5lhom*tmXtCu&1 z_rvvE%$U9VLEaQ7zv?~)-+igh6>5`sx!2mqXeyre`Oli58>l#$PGBR0^Aa$H+XkC)a7vx25yTjGAOx>0$(3W@$LfR^5N3G<8S1~ z^cnfs!gnegA{P7cM9Om@%jlRPHqdecAaqRLB(%oD|St=4kcWgb=cKRgS4t?5za4bA z`Lo%J6o|q75*;wQc{jLPh=#`zV(CM9wtQW@)@692UZ>mqLlx~S(Y>TOhVSNiuO!n8Cmlca=EMii z2|Lz+^zclft2HBSRGPE!e0!&lA6FEvnsSfV>TtWG2N}&JhKAZL{ycy4TY2OA9xBQ7 zmp?s<^T5Q6+};}TwuEK;eH;6uuFUrjb!pr@tK?RghK4!}JD(YMU1sWI;fu=#c43S}u~HFGhoZd)R$i0fpqZKL z5nj!{C9Tb*aZXHT`#pW-`e5C+tQm&;Nv?l@a)HI^K*-q$y|x5i&nlMY?;V|YJzy(e zsu=u$4)-t}FUh7^e1oKXUK7fXvY}k5&Uz>BsVZY1ZSTQG1;_-uAQOn$zGrhEvXh>% zdY$(MoqyGa)5VeW*Uu?Gdc1eAhlu#&Cr9uUV9Kk_HOWdMQDfuDwB^ol%?|mQdg#)NI`b2W4Os=8xGL@duLokmZP(n*CZzzM%9l?S!cySHh@7^aXQTTwb4!~k zXF@cLv>i~U$({&1+^RYm0e{pJr^m&Fh3ZL@JIK*-Q~vN(w4#9=4Szt6Rt(V`YwuMg|E!YaZ`o>PSZif`ixm1fwrq5mQY~a z2A+EYZEE7F!16sD+Q#?x_tzO)d(57ILd!HiNP|3afTC4cL5%!;%N-*Fzhur^74)nd zew;d?()j5LBZSoNdx(iYmaQHs?shBU!?Wd=U`b`pgs&|J1?eW&edq{JJ=k)%f>t_$ zeM^`th%eLWJ-vWu2_>C+yE!~6t89CFdzp-`=~r$}nkYI(yAj)(`B-pvTt+vqZ1JgwNm*b&EB= ze?x0yNo3tQ3Q`AN2KWp&(eo#V4t(9C-(KwSU7G&z0SStDjrsR^zHY>1C;iyW-(3^+ z3!oUku;;qzGE3X%JzEmG!iI@(PYd>!$TMt>Ofb|Ov#&@uOu>p&S=qb|VDW$qEgdRc z33X}b`AA${)Rzjxq03ZKnn1(Rll5cU%~o|ux2byQh~K05e##(q#=BTqyPplS$5>wm zd?2q;PqcQGc)aDVpvwlYz_GH?K1N=*_!soz@)Y~1SF#U=9EYRL2SR?_+x&BG8`(3b zou}v(a&b@o-qbPvvfe74#xLD8K3qo3U#aV@eWAJbZRqOHrK{ecz~Hm6zaaCnE>e)6oW&&lkQ{d3Sy62nGNe-)_MhoF-1-Ij`0nw~rVRfA0NL7W_|c9PwT zNDctLYUR*0BFy;K@a>h+)2tKr8XY2^e#=+~2?jf!m0jY`8rJk1I=oN67;r0#=xBt!2 z=duGyTn{U+B@JAu3D%tnuX&+POFkvuoOnWaLLvF#nQWE>+hT{pwH3 zBhSOK=vI1uyJw?J`FX?4mJtXoNeYzrFN+mOjpB7wsM)909%csq8OuI0tQg1etrmZi zgH>nlCNiEk0qjGm$Rmzn4%&H!ZbhQ_LSRHOZtvQ3U-jb?lDe}6pC%d^lwL7C*Fs-^r+L7T5%ym zOnJ>F;xRqgMuEeVx4{rBEqseSa^|hxb!AdsGYPPVG8k`7JT!))NEhdvnQoespzvmR zH(ZG9?f>Ts;|p8!Hg}1oq16*`rBH(x{K8MT^%rm>E$BuJk()%ldJ{2C=4Hgm_s#mj z=dR_Gra^(b5h|Mh;YN}+rK;b<$vD!Md8@mMKKb*NDb1&3tVRyTJ9T%_oj)n;0i#F(4LxqmlWwT~ zI!+6-z+V8~Br9%_{P^l~4zwsjG6kb?S>l}psz<#ycQ3BiNV79t6>?d7y4;GC5M$=@AJm%p68yp z!_gI=4U<5!2d{FtQkwZ>EPD>_cU&o>BQM^DcY}p9rF>S1>liT$+h*mjAhMa~FfK6g zBJGNQ3I8r#vSo@Eo6ERQ#2lE7n4T>p_`jF)e1$V{^nxug-c zxbm8(hy+S-W|pYTjlO|BbBrzwxk$qYeG!$}QqJ3Y1sn{^GgN4ZWbt;7=y30~&ELhw zvx`mQcmQiA!`NAPh}h23ykRhL>Kx(FSz4LbDaV= zEHZm)pB|C}hm#~jA?seg_`P@>*ja@eGDNPu-P%MLVp06d5R3k8J;~pOSO?G$>%zYd zvEu%>LoApZya*R0Os}k3>_-Rti;CKo2CPP>HFZ{&tBjoH=dymuuFUX&31WW!f}Yv( zH=`ztU7Z_drzVCn3SK7p%$P3R9xa`mwx9g<5R0kZnhMk*w(#G;Ab~Qg!r+ez0&Z{(dT1+hR3+3~V2d3nTnqc#?!R;uoi8*uT zeA7xuoX?yaZGM@&_eWPi=}Me+Ke9V@TeJn`}!*B)psh#Z}9H7 zcwwC6ui@YHA#&2R+DU)I%|jdIo1g&$>yB!&(F>F%8W z`2GE^bDrxt*EuiFyqdW7{_I(Mt^2;$y*`^Z1_J!gYrow%Y4Mde({(v-83N{@(_jWEpRcc5bt5 zSz9D{_JeKM$BKAHyZA#VWO=B9DyhUtc|-uu+h+PU3YX9S@1#ykvJ^J7a3 zs`mfPdK=QoPnFHKfj6ps|H!=hT+?$}r(va$%2c|FmMZIhW^zE|vMu2tL8G2=bDBp~ zCyR=jCE_ndR;|DA_5NC45f4kmh=g&$F*!p3R^3<+!7H6Kw&z#MZnEE*JC`?|>BJ43LS!qHLKdr#W()L?DyOovJnbeMQJA~8LfsVIWM6UU(abA!%u!&| z#akUNQsPx6cugog%7q&}@tavGBNr}{RyaiTB1+=(+Sr?(8;q^5-=41{V%~!IY?wz= zzA0=D=;6!zZ@!M;S?ZSArz_D;Lr~!8;K$OL&m83<5@yLP^+G?MVxj*eiU%$mwch$g zUr;iwdy;jt&iF}C*YXwbCm)qEUO$c3J#Wuc*{PxW4n5F)aip1+FjYcPI^g!{TQ5ht z*`iwi$+4&4sOcIIzshQfQxliTJz8kN+l`&_>m9(G6L4xxtE3r7>p(n~658v3H%23- z_bUlf+GfxqM1?oW_pQmsh2*OVivuKDDU7VvYg0_`HtD4uo9a6MXeDvsp3b7-B zEkXAXKL7YxaYd0}oeM5pY7HsxOCH1>m@snEl2^Q~IW$cp zF{>m-gL0a^K}Fmi5izgvT?ZAr?XOY4t%+f)eR63063DM9M)WjgsgC1|u7WtPLrz}s zM55KX3U4@D^wl~)F%T3AI{N z$Udj}wC(^@o%-RZQe?~Yy@aw1kBIC?;306&Lk?kIxmYj<9z!LQf3+}3rgB2|JqX?0 z&N=oggP<}BDY_XgIk%9HL&-DI=JQZXFR5h_>GkeKUoVxqi64&r3+cCg;NqLFvILr$ zHoYHj>0Y+uDJCr<4p%y>95QkZQ46rY8i;DF@>3U*Q$-$=|Jk;uV*YvdLRe9d-71KW zT}@-U?hVXvFz5EYm`}$!@ej@=GM1|?SN4PiTDIAQ$EUtovNRpeg!U1*D z@bJy1B6^ssM4Rx}Y(URS!{58QN^qx7}9xss1vPy@^-C zOVN}gW|z6D_JMq!kN%T9N2?H(jjugx(A-VlEum;kII(+N`j>)~)^0B@u7>1473oHY zkLnh}Ul_i}tQ}?Lj#<8@jaRS_mUWdzi{&0y-xwyRs5G$gSRlEZ@rmwPD6_tmQ5$wY zt?6apE!%|aCYr^{5-YmitCajxI zgsfjI6mWJx#yde{Vt5cITG|QDFT;&Zj*h~vpfiywoNnWDA|?5kqc4LHjjOpt_pt1* zMC~(*+q3>Sj8(CyE*#UzMdNvB#r0N11}R#`+LAW|^9(lGOsw*8+d}G|UoH;WGu3Vt zvQbWdll!)qchBysx;!hrd%--vO)_oTEN?K9*7Tsu8VZ9?Z>pbXzV(EMe#8^Y|1N$x zFm(M#EWIE_*$sOmxUtW2i-`NyzANdE-P)uu@Qc_21s?sL=`-dDu8ep9bq}WPU)K0f z`8FNcqV=k#b`!QQ4QMn^d>mi=FsV~KgA-c6MZIRpKW6Xc;Dph!-OL>52+MS!XVVQG zP>rH)ia)JrISLH zwO{KbGnA*&S7?r@PtVJ2gw?o&3)2Om_q|u~q9TlZu%;^bdC0sH)U5f`%+YDuyX_+2 zC;4{jDbBg=Sq?t?gd(=j~E#bnP@7npj4;D zM`i$ntc}z+UI8dMz2Bag>`lN+sHquO*~d;RbBTTk$cWXf*QCwU3&)t)ji+PnVFP>>qEF1Gyq zd&^3|1;)z#KHN3%67Cvwbo4nn(DT@|oq%@1OCsj;nPG*m{bs=EpjVYgS@5reEaB{S z=PeJPm)T1hk@~;ju_jj{O_bYfT| zXQA^UGMr*|XK#M%=i151`ueBf1Vtr4A%>%9gbaVva@95H1I~ucQx89Q^wL*Gj+7C77FkSB@FY6e@HaR=HGInX9%QUA zq(UIC&!f(x579{;s)=#z5c+g`6!-1cpRvUE14*H;Sy22V##C7?*Q10&$zAcF>#%wL zZU)^icQ+FqT3nB?ZzC>0jeaG4CyEKiz~Z*yhkWUn>fhx^oHsE1{Y~V@v-A{94FOt{ zv$&t-of!#b-bU2zdyc^-V8Ind(tpT! z__b*+v-s%hfsuY$J2VU4m(sZjT`+DxPKL7@)2&H)64;#2b~&KR#B4uJ|03t&#~lyj zf>&pmzfR?I3qcwYc9f(cOg0okGJM>?k2m-m0r~={&RtcTSjWUgP_?vu_wWQxf>z~T zIct-`uFB=i0>ihD*aV_5aW z#%+69jUFA*uC#ZW8}Zp$j(*eLtvKgNBsbuGajfTW_rjC0L8auTkbOkVGpQ1yDJE{( zjqMX#P**7y_e!I|RaNAr@3=fT`E6>!L>JtRV~sxZq%&Z2#W46C;~8=l64G?v?ZRdjsgv_R4CyF= zXk-lSG(H*0eqUmuyG~yVpx$Fi%lV1(bS7t@+IOk?ppJL_MsN8wOEDd;RB|4cuB$xi zcUw4&if?@zFr&&VF0mHPup;tv?DMKf<*;FwS#!;xUa-qPP4xu%w~ln)$~#p;YUPcQ zRK8YHlUexw6zS6b(TC!Gf5sgz(fU`J#Yam@9Jkh~y9Qau+LT8Z;=89v;jy$eNAgD>uY5j%d^%y9VM_qfyRY_FRD+{g ziE7n%E*O@sH1G`#%yK(%$#nK{>w*-NN7(LbE|rrbCb-Qy&f-&t}4rM zD_6+;`%rrq$CcZDJhoTWC&`w|Dn~C{WIb7CV*3MMNpc387d(DM*@sV2u%&gaE#1v2 zOo-r@lUuqXGp@>WmS0u{i(YTv9gL178@KXhaNl;7Gxg+?)<$H}pmobB=Zi8ZPVTJA&$eKgM2U_p75OevO18~R$a|hApS47u-BL7+ zO&dIjf1G;n`s`wvQfZ~rj(=*zrX+6jhO425itw9Y^JUb;_R02a?!y(RNZG;9Uo!;5iow%|_maob#&`NEsJ z#NjFez1ZyE6t!V;I7W#4M3^)*ocL+G181==Gk&|oC4*o`leX)-4%bYS4}UvfYrDed zmNlw%lt<4dNO64Zy>gxS-YzV)L`8hRL%Bx&>2z5v-*fqFKc(9VD1E`-o9!5Mv3euj zjE@U0@=~7MI+C~V{>#uXF}oHGI!#HQC#(Wvist;Qxzl;SW2q2|=I5B_`xv-P1R&c3bu13;ySFiNCh@kEwZ8TK zaofV~O6$~Ge~elmb?(Qrvus?_w08(1KSq0f|KU7r-c(sFHN)o3!{5lx+sn>}i(Bno z`-+{X@M;^QQ6;xD#rPT3)*gduFeACOAH$N7ayxzCq&;ul#F9Plnf|c?pAyxRX(5WY zp=yKYVJ!{G85~|$N$DRBZIjaLLWDAu7HoqlspJabs70=*43i%us zINW-(2G9LgXS5wZCe5u%rhkX|#M%9BG+af$NZh&TswkLZVCG|ws_VA?i@M04sf4@^ z=WeMN;W@7cQs25h;e6&!XLRx~-kO~8&I&|{mwADDtRKKBp=1H0RMqQD*=`Cy?-=9SR?O^7`Dghjv_ccD@%<& zifb(O*{i4L#5@%76Wl{YrOf1HiWU^6Z2Qktm;9}*E!%sx!tkWOzg zmbceEL-zGO@!qhFY$npQks<5opv7L78@BY0uCH`2Q!?$-)UiC0xeun^9`8J!PU>m{`iX}gnqsbb3-fU*X@!^gU@hv|Np*ig(??9GMo zXhoz)7vt%mJzPCi=T4qDMx!!ay^`e*Kqtuc@X1Pf;+QQshr>`MorS^`Uv+u*?q{Sq|<_w>{KMy`d^TC`l6r@`FPX4PG^-Cp$;UH!1{_kvd6<;RfciIA?uZ5MVEW z%Du|9Ns0E-^h_;yLu`~;tL*wG>qu6}c^_B0FWix5(NnPhzK7LUYRQRbHO`V>jLTha zzyMoVrn`d5W{16Rz{J=J&$c9^*qkVroSV-gDr9d>n9`OMubZp_H0eLsIWE?M+D)c* z)0+RRFZXW}^PTeaK(cT;oBiKH->(Wu&Vn?5guzxklrQA6--;{$nx=)pt3FEnI<3wj znOFn*mXfRmM?;vQKebnXLyk$ypjO4z ziN}3uRbRxS&^c=!UE(9n`dZ{P(l*>Q5tXH7w`AVcIKDCmj)$uexVN*;?7uv4Ilw&s z@zgPjWB{qPv9NF>iuP%6CH#HdS*PvFh$LjgCPr>J%njbOM6Gv+TjsqF`*4o5qUgT= zA^yLOsC<*F!)Ho`ZTz~5)1zO`NX_R9)%nowO2`CEK6oq1cM^$6w2`ggGSh0UD5kbg*a*S;}$Dcchsd4hQ=`%Y@ z6?$KPzAngnDWFn)YlW795x3^`;zH2nD(f<++sphQs=(j=X(3Bgm0R8FhK!P|CK=%i z>+PSurEFK9=7hEP^|H9fF%so1>wSu1M}EC~VgI@;YkhQ3*L0ta_HR(O#h)96r{ouF zebhe!N{MLo%+{zC|8sX<;$r`gxfB0_m1_Nrx_%7XJZH9uO=Fx1^&o0IBz!+8SOyIX ztit9{zAE*;AWx5H<+h{`7k`wyEqs`q%Zyca5yE+;^@931&`RjRK4+D)qc-N<{a#&y za)u4mSRrq|!kJwra$Tn$#5tLMWb@|nmy~Zu!c@Fq7TTO~M`=ks{Hx#6;qCur)wrWn zeL41;=^tdZ%qMbtvwHE-eHPg&eA-|AjTg<*U=Vuhu$j-#?A$;9KQ2u&WvEuoJKw~w z%aQp?hk;i|D{%hN@$%r1kY^c5H$Trd-cAHXkcm(Xd^n{#I>k7%m>qmY$kgDvJ&9qe%g*#M=6z`S`Q}BCUcF4ND*H(9A5wBn z=1n;F!+%yu?}sHfA^&DKuP{nMtlR@PMXi=@}&hidY-Y+GmTYb?WCuWyEbkxpmN z8gg(&K}V>RKYwv#)zez8q#@${nnPt3y}=dH=^r5xWBOj0B9|^z)(Esr} zY{X2WWjE8jEiiKb-eFs1b+@g$OCnBK{m8#dzld5#V;ZN*e1l(Y$)CKM%~Xf2sCk}G zH5x6h(`0#2sQtYu?QZas{q`885Dn~%4kYB+TkGmj)$k{q(y{AOrneQxk~u_SDF-~z z>KvI-5CUQ;a6r+;cDdnubhV zihTaXkLlsQteewcP=H50o1|mc#tf`m*)v?AUzWxrdEAJW}NzmAK9C@ulB!>Y~5AIJ#w0<6PP}2XAMzjYG2w4|`jdUdJ&1^g0LcwZq_i zXZgeMJfflOAxUN^6^fX4I;ni{$XDhDgljJ~royV{5enX`x_8Vk>igz{NI3*bAE1;| zkMQ(^po8o}i(d^vygTtw#3-hh;a!n7sm@&$A1`9Q(}BPdVLcNz^Z21A?e#%6VRx!Z z=kdJc=>C!NLAGGot>#_Pk&E2)ql3||^8xMipN$p%)x-0hH2xo{9Vt^Dy(Yr|UgCao zWkh8ODmzf^wXE7WbB4!V7*WGu8xc@*Ao`KCX zk3uWu@AU3gsv|Vb@0!$-^zW{)r+F!Ci9wEtYfo8PDB?hahA#bFK2BN4hZs?X|8Y9V z@Zs|`0&4KU3{I-}j9|a{V~*I8Pc=g8l6wwFjfY7A7O0}fC_ogpGaj%V_FQWeK|FFv z1LUx!aRXBHOPs)Xh-M@JWVYY~IWvRzC_rx|I>1u?0SpY*q!9vLF&4uG=KO$^z?~=v z(6rOT17I0TadZHzv|t$oRKAhXm|W*V0pRss_93JAK(T+vLF2YS)&4_*8B_hm}LShoFM1AT(h7H2_nNoBu4prv4hQg5cvtkRjsp1!B(taWp5UxJ%Y6 z_T&eFwz_v#(nGh~JxJjlk8eF2QIgZAScO(S*NuF`_=STF28D<{;qSMom3k-70h4vP zRI@jA&zlvd!d|&mv{MTQL!U)7LMpwwwF%wSu7m*iO!|Rjvw{wfom-r0iH4OOC&2mF^6)Z+A#>Dq^muEYP-r}=)38_GsLRankF}nY``bQo)L(cY3$#@yuO|dnEj&k0V0I!A zE0;cT1U@2BBBEwiM(SYH&zlN$`r8?`99)3cuqtCE#QL?(?yLWUd^? zHM3pf+9;d}{0B-o8;sYXU~TVzZN$tW&;xI~yf#9sYaf7@A5fd+CmxcRL#2yl1LD+8 zAszZqYn1B@owzD31Hung1aqt5RVNGvb>~-`#}w21N01JMOg-@~INS9Cs6$~|+x0}C zw~=%5MCAS3I0BB+AV4&e}= z(ayl*jCS3ETAyy{>nNx8eXcbD%qk_H3V$#RU$rqF&^_&=MOj4_F?#iLkkm|=6!>2a zOaE8HDBEEL3UK(`0Rarl);|HzBpx9}$w5X7#U2?gFbo+jkS5gn5dw43X9S358dw>b5o$?WIRwy1I2Zv7!aw^Lj`=06f#@{z(TmRMX!2QRUNgxe_@~Y)N@9l z(oV4v)0pThI{{$s!9YDTy*mVfbwmSlEfEC3K%Ez51}6cKEJ7j0C+hF>-a;f7)gY_+ z_um@<2~UmzXZJrJZ~-#>h(-(pwu1%?CqTK|GoKRNH7&3(Y03mHMFCmd1yjDPc28RZ zfi!#ZG{8Bbqkf8zu0jDYI=HLB0Rmeqw!J{1M89*B1Dw_=7=V78l<0-YJtXQuU~<4S zkQ+4tENj%mw@ZPh`g>(kndGq%u{mf}K;3#rKv1>^DyJ3|2A^LDCTz34#53Cqd9Fn| ztH-ktJhE=*8vc>7_V z1gGj>Wp@2nnLf^$oz7iQe$ES0vzVSPAybm5NOH5Y9D*;2Hm`m@cy-XAXN`Gwq$2HiT)DKaqf;;X7ArJWoibbQ~NjxNiKwJ2;wvbQwe zn6Tp+Rl)J z3j=`om#u#v=Djja9;D%=*H2+cAX4G3arUV@6Oe(=2+%(@g}P#>Z&MtY9dPDCO{=FM zrXE64|6v<)+3>T92>~SSPBi=tYmtK&Pxa+My%he&SMGEuO8twXJUprtI zFO$}+PR%~F>&;7XLyRiJ@v9}WS~@T6Vt`v<&+wXtlO?fP=aby=2FTOAE9UCGK}NtiO)#_a85v8WNtn1uU&8NrS@pdQS~7?1EAv> z37VfC^q%SXb4EU+o+jJP?xEcVs{)f30_?bD8dVcWt+FN{B5AVLFe@ zBLD)eS#4k;#c}{713v1_r^2L1M zocI<14C@{Q;m+!snJe0;QGujl`b_YFK(H~_gCzm*V^9={i#FRRAkCp{H*k)EO1nIO zJzS5|Yx6R>E3m5{4x&Dw7L)ukO4h;n3E$0F23z5#gR3~%Lnms}D zF2uBi&s6lg>kET5hw&sKIjQwL5Lk~=BP^5_L6%2grgyMR5~@I44VbM*sldxKk(^ze6yvorUu;zuA-#h&Z^d zT(9O|fYSqoH0Tkze3_Ib@<6~!14ojQi8s*Ih{Jw~+VqbKfPYi~{6_`Ae^dZ; z-28q`z|6WtKu}e;2MSh$guw-?QE7eR2FEW~8`KRP!Byl3YYj*m#jDan(&&Gp!|b2v z@cAb?+K{5-@i;?4*h2P=+Osx=_`a{J0%remEN@MqbZ&*fCr+fy4@vg>F5qscF6RY_ znFq4t42VOMw}^mKt==?}R#Q>sc0nsQcRNs8g5hFg(Tk9J1^A+#=V;I{5vx0H=y1Hs-x+Zi?>QBM&G zv-KQ3DkEZ2r)d|{uu!PL{V^CWGF$o%TCP9NBrKHG3}2jXfwNi# z8_Kq>26nkdGtbYf8DRLc=9%{o*+{uzhN#+z33|vTHFPBCO1=oHWdhG2gsM@qZzVtG z9!w)d-zZI;WFUiNjwoVFbA8B`X<4`pdLlzTgV>o0pF%+6I93TL)x928`2DmH%(dNR zk7F?wqrWw#8dq;6k>c#tLpFmf_b!6?-Z}SC1F1Il5S4piEh2AY#Ff_*Kd#}ljoZ$W z8k#wj`malwQGsPPU^VU9Cysnp>Pl)s(MigFPtZaHr&k*hS+gcPsQ=3K z1n@V-$QXKSU8;4n@C05FO`9}pn$4GjcrEUDN5Fs1jf_VuTga7!M%f!ods)6QGTR0p&CKj-(i0t~f} z+7IpXK82s{e z48kRceA#&+G#7Wjg%9mVYXfL_CU;<}VodwtofMUDNB1dspJX$LvW9X_WHO&UBN?G4 z8l^UAUE^VTvog~@iPCF}bu=8`HArSO`VEZAlNOvH&@9Fy2oew-d-I}#$5e!XB+xkUn{U(v(Nx}*z&S8q{ve6H)P-a4a}FDT z?SOe8aXFlzRr@lC6q!%NyM-teH)(8R1^^vf)!ZYU?UDlmt3Yd{-1~ZnsJXz;$QZMn zR)D|`n>*HO#BJIRcPP|}X6dX&@-<@svcT;SI+x>WmqJva5yL5mGH$)x9+Hzq>w+&O z)Ox{12kbr;w4wsZlrX1JK3#YdE7m?((?^!T9JF5Cb*fI)U46cBk+LI7Un zmIl=MAUPp(%d!A67sCOTZ>`~g5&kYdC`X4Bgfd0p>yQ7B8}R>eL&*PfL&SgFfV@T| zH-P_f0~qBWH$b|kWd{To)e``+)HkgkzmtPkTilE3-+O^kA<6^|W)O%d%)^E?hMHCW)BW^q2jPD{ka{u(`i{81F zBa9y}$`DrRe+Aei65wXc4F75sS+MZxM-3#4Rv})W_H`mLiK77m`|$HtQkoF7hd?%; z8V}h>BG^S_R!`lc=R{l}{(oWINay2`!SqEC78H4UWJ6W*59E-t*7G6T@$%ibM-62E ziM&!I6-*;akZ#h$3W$Y3h)!iX`2iDXsS2I7c5r5fBM!P6WW=2&+|Be5P5h*{MpL(# zKzxl60)D0f(~Kr-{;RBK~mq1xP^+i7xA@~5i0!uLfa9k8R^dwG30Nmlj2;2{9{{+yq zJ^=Xq^w=n~gScY&0G8~63?O2ugpHI|PGbbXdw*u2_*<(SU_`KsjZ&P?1)x~))B@nH zav7kw{DUmO;)Lv5umAN?ckZB^{{15`NRzMZzaE#F3Z;1BU+*a!8oz_FB!Mc7{oda7 z5@MlPXMzgm6!}#K085RzgzHaEjX}U)Ho!tI7r8IZYrtDm0)f34ucQWP4k9JTi7(dw zAK@w?0Ik-`18nIBFF~657FiG=#q%>nid_b&Exo4D=m2a55*VPnj3W2{A!cC|b)AIB zPQ83y1f<#8N)Q4}*_SjyU{7+%$!SzjQpr)=-t%GOgcdwii2$%CJ@Uuj_~Ennk^|;- z2Xu~cfB{m`7Ob(uJn_4D;xAGmQs6i`Tm!C`mLLFof!_*l!D`rq0<__ip%9i&VgnHA z*r{y*2k$t;XDlh3N#884^IsPp9VI2GUg?2~?Zdr2kw$f3_;X@DIpf zNF1XF|5Lh=|CBBs3R3A-pl)Y{0Z|$F5ELg13<-PysX?RxWQl@7n88q*Y$guSxLugAWGdOiIy7fBm%E&b+3$K*-(9n{7wP_C_D zr_7on_hR6;Q;ukVmeos(F)YuZF(E70F<8fDFx?dDQm^c$(*5SEGZZ(oga(@K&u+=8 z)f#WoP@QcRNlQtJfNkfX;^pDB2SBz>a`yAni1{n_h9L-W`>Q)zAw?UuB-T;+_4J@~>-|$pg z!3JR*pC3%famI++D#cmb8*Zh-p9I+d;5=l>z}b2XyQYqJhg~ggzPDQ$a1Z2RW)vGMQtq8=<5a4;i}&oq4bfiYxJIp zLzh;?-(yWCrI{EZOS1wkzQ4g(?xeu63@cDL|%1@gm?*ZVompo zM5y@J)*XH+Ez;`|!M>cspZRcXhvBpIa2$H{6!HGLdubp6H$IC-Jn$P;U=X6a?%^ID z+KZuawX@QT@DGWBG+TOP^~$m`G`+i^ef*l2>`TM-ZR66ce}z;uHXzYHF^J}2f&B@Z z=%&e%)^DD4DVwVkA5K&D4aD|o*FTv`|v3Ys?N)y%? zf2jPzZ<-m|%M^9~Hv8T1tle=5y^h{2M*Bhni|*{ryJXYoSF|Zv!?o|t-U1Ox| z;2%4~Z*+y^%uHp6Ci&Ug@);%;V3FF_I+W-~RPR&%j0VvyrI84)RVZO*IB*U=ZI znOp5X>o3%PV{-g%93X^UI%_16x&_qxFutLDNrm%*K`6XP)y94YU1&=gfTeit3057XKNu7RJ7R>>r)!9O^P23&VD#_Cib zU?(dMk&&#(7;jHt5BqJN?PUiD;&P*XtzyxWgRE4|ej=Zr@i*nDtA(Srw@vN;K5u4E zg~ksUwfUJsyXr@HkLo;PzXcKLH0(kX4 zlArFxmN}C&uyK-~W3jM|DX|=1fR(cU{F<+G;1v~@y|WdT`EoO76dzT)=8kMA&DqF% zH)s6TXr43I9b>y@;#z#AWF_ZzzzEOewi|Rh>62kt%!#Spn^!FqtXk31bL%*&SuJX(7>Ew3Rz46iK4Thr;U1&O{waL6p3CUyp$-?7TVPd54eI!dW;#9P0 z&#OAw<>0fdV(VGkLF=3+y5#NBp{#D``xm}D&0llxp3q09#5?qJal|paj+%M85kHG& z=ld)j-e0AMIgjtsLssj7R)56 z+cOM0=cgrmnEmpre=pIO#!XX@a76uGqFzmPIpxFVEJexly{mDeOtm!$<&WH&KXs!T z5;uaLBkqnvADA_0sFpapVE%WCc({1UMF}ZMMRx-l&<-SdWANY<_4e3aANl)k7~=)_ zJlK2W9M*E7ir_)#3_E5<6y$3dVSN&6oJMRs!{$T*ATg5jNtd)(6^P;bEJg?7P+_1z`gaEVEz3Pp#AFImw-mPsW+!eMIB!Q4tExRj~Vejc_o>-dtMhJ zkRJH+ypDNiD?&P2{NWo14e!H7cHj(n@E!j{`G*SLhvc22)$>WJZAyvmvzBk!DH-^w zfi6f_Y=;@?iWOudU9pXO*XLE@V-nEwVZOU>pALENoaBq^_Uqzrl`kFKeoBy!j7Z+q zv(;&^LI0=&lOZoY6LulD5!`0k&y)CpnvoLh2j*&qVZ#MsS3{lIF{Z^XXlMuQW&ssB zukab0`06tj(zSTz{CXv3U+PR2KRnm2gOV8rEuUK;?20G+GJbFlR6jw95*uFJXVV+5 zc1qf@9WP^sIpYg^+k1OHDa)0Q_j%AB zrb&(Tz{_V3i#)Gtin5dYWDB$JC&w~?oA| zj`Mcxm^nUt->v%e|7{uP|5?W5VoR?mo49=FT&FNwTuD+0TYGu(1iX=sfAiILYJ~m%-EUK%*Jaw7|+U4vvRsNr%D@ zPU^+O=Sj-%pFenB7i4?ck|YMshn;(5{!ig??`+vhmrCC%nIYrGO84*$WAL58!?ywb ze`To?aLYOt_(_1C_hElwPJ=<#SXEL!`(bgl@CM85F8jU9(Kd6q=fK>Se!{=oVx7&^ zx$kkODCyjzc7~j@E%R&O_J4KB*pg2SJfJgN2yx9QLeAR0J7ghULbu6)(Q?wjNimz? z4bRB{B9TVwxsxnHw972w`CnN_Xop!2;2L7&bWG;T6nTW>=<+iEQA=R~J)@`ZbeoGo zp^YL3sc}+OMw92{*=!|7r{8n{5P(C*v0~lquzaC9#=}t<(_p;F?~01=sJ?yj-N7v3 zy^hd)~dxibF=hj79t?N>NzQP?6nfgS-DVT&QF^b z?2yLMJF~>+x>vI$Uo$ZzeujQd&3qmjf0Ql++q~z*h zv)&=kW-e<-&gjZ7|J_qZ?t_V6#-*3u-P%cxRk^O?PI7^~zCpw7=L5bToL4TFKd#X? z|J5JIzxrcC)?a$icQ|9F7kwR5{i2FxsPXsDgxwi^*~QKin`RkvD=BZeo%Jtr7h8X= zoIVy7>Y#Fez2W|W+tPO$(%e5Xsy(Z#($1+PqGgY+KI@SFw51D9r=k~SQo!F%*H|G) zTwQ9EkBej9?-!7?JW}_J{Qv!=)RJ4~|2`>Y1o<<5?2-=;9q-+o737p@a%MlJ8uJwO zKg=fvw)w;%_3{G0ymEHzVc`q5WA9@U^K7{8v^ zzAqbm?$(jzKlCs?p2 z*Agl4uxOhgr18`kEu>KL*8c=VCQc(s^;h&hV5~mo?%CvS|5ky*P(ZGs;{*qMui#s= zj1SQkBad{YZ=K)|JtxCJ!p&$4imXg)GEs?kG8PN|+hWy?vt_M*L5-ekQROz(@?5i{ zRN{KQ(Z5xx99$xvTYZh*Cd=i{mKC*XJd}UD1oe*cE%<4@73T_~&L*dZNuJvLVfhynIpRx`8)#ItoXf9f z6>t@0pW#s4ct$S(9BKEbw9NTAEUTz? zU_l(CCJ)EjI`|fbw)pxXrE_04caWYaOV8EotGvHm-WU-bUiAj%7%?fPyt?I8Qhl@p z)@)iTrte-#^`+?k)x_e;Sl=%Zwu^Y%X2Okk`ufn~8r4R`jz@B!aZ%&y{`zFSD0}_$ zc&u`b*)L$8X{?SOHs;4*v>D)Mre!WJn=bNiFS7BAG~%sDOQO|dX{~^A&U6;pfH3SP z+&skiTaVn>2=3KwP-k|wMtIctOR<6JHUcoW?$;-8%3ZJ$dEKyorIQ8Ze5EN>IT#Xme-@Y;mnZJX~T{CbSxj;zS}qC6vEf`e{4cl zP;T5=-^cJlc~W;Yx{9s9OuByTlo1;#37e#h@x2u8^3(2S=NZ8g*>Fv<7JxHOh<9r_ zL?j!LAuuyYBCE8bq*S(WlJkR~kiCx%QIn|82qty=d>R+>weqG=>TTBFq+-2*O(I(j z>08UsBW+LtGTi4wY39Pu@ru9TptotoMhrZU-zJMeQDkXL&gXbvaGeH)s`U&Bevx5` zbw9vbQ~4Z*%~{-Wyt$FOhb$vA%gjRtCWyzuY%=(sUK(Fs|BJ_KJ!g7!DU`t!@_CR)#%Y2@-futJ=I&F zSndIDb)u?nDjoL}Y>cE|KkbyYifR#(>J%HuSfs>D5-*?q@3}`mj4zL&Z$wzD!+p7G z2~FQSEa`J_6b#pBm=<}Y(5`J9aoId&XI1cZ)<84VX?5{YrJrmwv)>LlCSyzS8xWT= zN@F5baq)NU5a##zQfBf>_f?+EQ{ooyV*HnjPUOT4FZwBo|GfIFO(vuJoK0>fj7Qg= zQS?|UoCVwY3Gr@JfkJWO3JGzkb>mjCW?YDGo{a8q(>$39h*t#Gv=(Uy){C@sNw$qI zVdoWi#rT{Q9@630$Z6?yjC{D`$fJ6Wj6j{^Ua{uEqXL9YH^1O9PezNVF9NkyE}RN7 zGG5cAP>c^@qz>bhiel3pd<$BL6U!H1+c1|77aKcv5v?qWEL>}p3-=tu{4;3%9U6~G z{99ZcrqG2+{5II?I*Z0D4r`~9{Dx!!b1S2+=OZ-TZx$HLg~_y#?xqfbYXqdiNASV% zF1`I)`obK#$l0<%anh0>bM^RN`7l3&K|v=hj&Gusr3=K>_(|`Ddt?fIaV8)hCF(XF zvW%6QABAB*P@dtsQMxZjYm5sm}$tq-uOa6 zB4e|8=@*x!eRFDEnIwzxb1RUhpqb}RxZusbYb}#po|CxWqfllpXP#3}HsZh;R$IZh z5S09Ha}5h6QZ2I>BRALNIqB}^X*P=Rc__}s-s@WN&4lGS{jeW-VzVw+z4?cm$|gVk z!Bl$AzOEFHh4Ot6BbE&#cg)d`q|w*eU9ppv^>PEUWTq1FfjblHeO8@kUqx4tBrgKGDWW|+mWi(YLc&ztYk=pyb(4IXVq@zkn+kJJbJG80f^D%D zOrXb7m&6YnSCX5*nXSAVI81q)b;OEV3u1Jn!$k=iGDG z{exPI>h7xA)jcy+d++b3Wu=>X_DF+#zwi;;h5piN-ocouQpl|;X`A}x5@lMJft|J^^*F%BNXnJX3Pl@%l8oxNw+}H~ zyMi#q6tOjNHS9Lwv3R-3Xmg9EMqD~PdD^P(hDY^i@n*y_fSl-WTx?(u&f7<=>FKHo z?Xlx)pZR0Y=<(d99hF(Nd>e&f8?;JM}aX(cRo`oec=Mb`p#Ajj6^A#`Mi&MM@ z1GK@O^A5U<`mDA6j~rH+xH7Hvv21iOgO;nX1+7nVjk-IcBV z1@To>APxYR#T$I$G5$>-0^ouMm>D%UwE53Y*30Xi@woa3(EB zypvUb>iP#CxeYlBXk!2)W1Kb~6A3d;`-pp3yFKS#C9K_6_SNOL&6awUaAc4d8_&dK z6$`6uhv(XkaQYuRa~}xq6R&T_p=cGv!p&S_7xnWb%0i0ei|3<76v|p?l2A z(r;`-cHbsLaqa3D+RIO#UuSHtZHcOEPnM`~Y%j60J}D++POI}{e4U)*jn9pdyHT9} zB(K8bHV?%Wo?z-0E`qMDGpnZFsNmNbT@~TE7UF2j3PVM=$r(yW4l5jKT){2|7ximv z{?Q_YyMaY*q|oSVsd%GV^iXE2JST}`+JoO(!=Pv()MSGExJ7v$UG^`^_>L*?Bd92{ zLy0v1Pr(nwW>|%gQdgE?0;x+4j76z2qo`o^;mih^H9guGox2La0{Wak%;_awv+#(@ zq>~s8jPs_pp;IBtk9dAgZ;tqGavGglmpH(U!}^6PGn!FD1q!UBw1NEbV6m{F$Qc%w zpSJ6Q8XTpZ4e6R>7GL!5y)5jz*xfcZIwCDgnK^E4<15kvW}bhhW2~h$TzAd=hrB{J_oRh0j&=IV3YXs&s%WH?*2`Fo=)%sb}i zc9<2Na)qr{pMxJ5?!)xDwIW;{_3VM*Ula-s@H-0$~bWjyRR=eVYC?Kae+ded~p z2xi~Uu{?HuTa~`&h`{pLZ$f@e%}Z+g3qOmfgvz7|98hC2NRfJ2m}gZ*kE&&v;9pF7 zxi_CmT7yys39eY&B~zQ#t?~x6L*GkGdwwb=AqwbBA``wLprqOtwsrk5PkUKaXF~eEof!nx)_JDig2y zFpItnaJtM6c8((DpLpju2|JyVe~rB6gEH#3P&*#&yQ`kXco@l91-WN9tnY(6IwD_6 z%#8bA{Z#$)zowwdaqzF+w)y}F5funY2v(3EN8)0tXgXIREf*|8cA?iVVl*P&Iy*h# z(ckV)O}bv!P*@RL;r6@Y%GO(2@3-fp_m{i4_lh7$h3zNg=4H?y-Fc+G?Lp+a z>o;v2btZc+;3Hv6sd`0TBaslBLr&BWlYBadi4>lLi7e;Np2;La`xf6K*zasxD_)Mp z3Ura5G^xm?=R#N|0Ut}AAvB358dV2K^wS6`HkGL=(2^%Y7qsLdHwP_w$jv{NJP{vD zo(Q&dy*{H{Ket19GbKWDX|rHd@{u^x>0M9)kE&$#N6403`y*rgs=^s-$I&=8QtgvN%+4~k!6+h+-}vA7BvMCl#-k-8LW1ctxhHJi`S*uxK$=)TfZx5lsP=1hQ{Df)VcNTH8Upz!)UDe zMFB*}I1Hs<*nyGJtx^^Dp$k2Qs7MUixYYh|lku8_K&0Q&xt7Yjf6Hc051xOKqhM(x)RJ(Fhdl za1p1hAoFE1hvBUn2f_F|HX!bc2LakpXQEMh%AQO8fC6apUsi$9r)t~^h%sZW88d73 zMF4leS83d!5jA%LT7n#s8rqG+&f6N*7UU>6B-mNbys!qn%t}7w1%w{bEUvkmK&!ix zO*{&Pu9+M+>0I{6x5_*ql#Dx+zHMT?ba=lN$D&iQrMKn~E0g z<8~;VMTy{PRh!ioJc1^2DV^&(f?LiU2?w;TJ38$7wmMKcmow^3IG$m;e4+&FJG9*v zyICU7;jJdGyIJoyr#$bkv%Rln?@#9|y&|fvgH3=ky#BJ$XAe|hh)`#G{^I-J-SeBt z1aH{l!7G$41v4esW1KEeLt)C>_P2Hj^@GRz`?$-kZIO}5Enra8Y{};CDzEp=&DGvu zVhjwSp^=;y!`5-=R>@+O+AZ0{m8x(vh9(GdqO$$AHoN_{uR|Nu{d!H}2aFTpLX9Dh+=|GIQi}hM#rUr4!C&xWZY|b$@1;3 zs`uf};oWQpcy`l%ZVrD_BTm8zTRB{21v&roM<^7V%-Vh+9+IS4zEW)AWN_i5P zDm7c-H^jl$*eckF3W7tCq)ohgCPSGv9oH}ld}4V<^ZOr|N;;B5=s~VI>eT(>$&VLP zRD92LtCMM-_oqRg-WSUZmfcj%m){#wE;l8F0>FgW!kjLT8ejgi1DZPbT&C9>l#+f`=c}4Hwx0TgVy+?6Ct-rR)k)vnYxl(;U zVtCuiQNtgviyJEH&&d4Q)67pY=DL#S0Ts#Xx*0I)M3dJlHo^Xb5Fj!C9oHtBErgK4 z3$-?_P=AD=-lWj)LK66)XTDmg=k8;#?$EX+)T+CHD8C`zogeO9M?MC}Hs2~e$|EXs zX%Ern$Vf)03koEJEAivJRF>C?*|ykhGr&I+1Qxd3cCc_Q&Qrf;6`<2C*4<^bj|T0 zsjVNkdb0y#{KnhVkB;lU@iRcs)!jY1b=US30t%*0YY24YKlFj!%3@FrIM)AQ4c6E` zum%DnAgsZcQ4rPua{s@i0>i7&NU33bTw;Tq?hS*9^b_aK(kc8^@lJZ{n<2g)5ZQyP z4CpNRlnu2`ZS#CB3ti>E_Q?AX%_GxJuSQcn&zBQL3Zn?3EQi>0649o6p7q zE9Z6Sb}(HuiN>A4xTcJkT-hgMVw55&riz&RXIv^KYFWE0dw=qudy5+~#iLa|sfvz> z5O=0|v`s%^N?$-Elcu~To>*G`M7X@QLJ1v*&2m`78_KR5ie-cziMIaeBX8a+vEn^% z>l!)9U2mIM|NZh|buX2bOk>+OwW?AU718o?zB-xx01Z_77-LlPy$_%XO&2Z9OW=9r zW;Tdh(g?ys(7Uz9@K;-S-JTq;_hES@hsmp?HZ|eV;Ln?pp%-#mPF2?^xmX_68+Qge`R7NSwUqqC{9;GPwHG+a?3dR7w_xj&=C|zN-nRDLIvKeoyX38^~bqFtd$DszB5MZC*K=e{;^qjMm{wwP5@GA zf9>nP!-}dRWluUd-s@nhOO-C6`MIucqxMPC>cg;4J`O^lHvb(EXyi9e;+T|W`uH)q zvY@(9Ewq2EF)w1tBc}RKW2aN*)SVe|1d=2?O6m&W{~Ry_8IO1dIxsms>U0#{N00w+ zqr*!m86S-n;fL;ONP!p^U+w6c%h$;`^kRkWwQ!CfHRsE3KpD~UOqK3qilAX{K>pw- z`|aX`^6&K(>K>WU>aiy(uu zx6N|qGsi!iC74)W9q3y7Pz>BV1ckbvQo)4N;Zkx{L30O9Cic(8ZtzJeB3z)l58K@m zI6fw*bgb+|_2hd~3&@GMJ}#eH7N>KW%Ddyo=`H?)sRTRJy&>`7WKY~l1Yf8CWO0IT$ic{{XaK9N=hK(#2M)7kdHY0apBtkT(~e=Ra>?f z@;rb1PX|~ZgDr}~WaixcsQa%0MR6NTIA)F?z5X-HNFTi}j7n|AgPwzrX;ZVNVbIGJ zHvXmF2Y+7#f|G#m5ADArxrfyUP4GXppr^Q5^rKdVq*mFR@Bf^TgT2&L66WszB0y-e z%Pa896A%_*<=~`YuMQR{@k*W>8O1P02N%|`ECwxn_i#(`(ye6gJ!D9g@&eAzF7R;k z26o?N!dZ5BeOMJacxSX+AHAqD#i$gpjNq?%5>6U8sHS>L&TJ4O3du_2w=_Aaf+%#~ z3K)*$IHSYOl;0_W6jf$R(IkC3N{r;8G;fIhUkH#&;6Dfu{R$^ebt{OC%s|5EfyT*@7M2azfZ z!XlB9`M=J0iQ6?^Xg1CHGynQ$xbH!pesGPAluyTy2Z&b~<&6N|fd!syrLr-y1p5IT zy1R26n#OU;468>El0c`#3+CR)UO`sZEa4fyc=N-C|H}h!-Gb%!^8ew37xP1(j#o$A z6A?=SqDi4}3YGDo{Dw2^JJ#4&e4Mj^G43;(;6ZTiILv|=_sUc$)V@y9NEd=Wi85jb z)-0K}odBXALpA;ebgY^75e!><8tz8K*5f*c1R3&8{M3nzYj0VmEHAMs^izZS+JzNJ zhR_(k2S_&(g!=4=P<9_5UXbAm8^o4*;~^s#IXF$Da+gvWN9V+@HMgk*jEE`S00<7% z!;P47n@5Ts45VaNiGbCbP~>DE6o@gA4}nMa(ToE!!#5(Y0?n`17^4z(K3hi6qN=e* zXli|u!$D>fo5!C2Q5cC)OUJmkBT;<5l=8GQ>=(^VGJK5ltdQ`Dh54XE=54OJ4%rz} zN=HcR*=}v_3 zh5ae-@N#+ERWRVv8a!J@iNkFkwaJU170!`?O+e%bi8YTvsz1_o8=Q=PXsF4_NicOWtU#lH_+Va@XCY^E5-Rrxu ztj;w7JHt&HU=!XJ>zuiQj`Xkm3uVVO*8|67F!qK+tC=raSDZM4fU>AVua5{+%GW=G zo_`rIXwTl+O<^C4nJXmuv;cm|@4gTRgD?Y=Y?MvNI@3eFvB{264{*uCpEOKy)ybY;s!S}Jd7h#Q zdOMgcf3Qu+R7C3&?C@-84U-Z9?W{9b8VMd+&*RnZz7J~G-)E)i*dUa3bmhf@Cpnnh zXwk41Q1Dbz)afCSz`uX`=TS0Q>O0}NvkQ-;hFi*@IZTyxj5wZ7I_wAwd%p5St;y3y zk;T`=FpbWg+&gQ!F!#3Fl1qokVX@bJtrif6D!ymp(bs`@;_su@TLVz)mc|`>5^)!w zBmC!KslL2ca&HxEC=w0rO8Wo7JEff}YE@Mi>JdG?PUGM-tY6-5Q396Z&Q7A*=*K3- z5n<2EG4+-PVOdtR71qW1(`osJ2)pnbC7!pS5G^>0dTN-JvVQ4}4p(q0CtQe76saQ* zH=E)}#}U3b5)qbSq2Qr~g?C#4LZXVnB@#Nao=>fcA>B^bhIO{kMMKjS>vH#ubLN%K|Zu$mMRR*ZZe* z=9`OfeK5rj(kU_&h;-`mK|00ymvp*tFKX@OBIqEoP6gF!9nvIFw=^a0Q?EBD_8n^ZUjuBjk+kSxv* zKjA3rk8l+D`bRiQ^q+8)bqf5aWdI@os!6Zs)F-zeDsvIi zE)3ask}YOgG|L0pTH^5DUZ9}nYacXIAol`T?pGT|U2@DhtC27~smu|0Ye;@qdjvLX9!{^(Y zfEMIQI3&@m&+38PIvPqw4(a+4VCyfoa7~X2CG>FwbMB!N%cqwZ)=8pSQ0u&+;NP;2 zKmOTh&M|rgU#G{z1Z%o3RH$u!#IUBY5vQD6-a^R^;Kq*KcNm%`I)wWRDJ^hkjf9_+*9Tc zUIPr44FX#J*jQw(zVOu9%mC0)i0XH~`37yty=b4^Kul%!MAu_M_aw+$|LWN_X@VDmLuQxJ^1C z8oeHPvo5SN@g&6*(x)2;M}ZJk4B6B5d%O|90x)N+zM_DUEnL@7^JdxWg1wHq`dA^) zSV@65C=NNp(+@gvtE@o&ZqzLUpE=|YL?7<61JNr28|^N)#!y;LjdlPpmoZHztXXB5 zslQn3(ZCy*1iQR~?cV#Bj#$}*Gb?gST=||V{ui&<(41<#545GKM|&J|rWZ1civz(I zeN_cG^z2cm8)2mv!lBKBYsX#=tKMG@SKj~LjlLV|63sLEc>zh@(yiU_jhwVwVN2Jp zobo-3n#o@ytB#h-;HG73iYlavXq3m5w-ogILvP!iJ$+vu(z()npK(OIo{vnvf!uTx zi8yFf2fe^f5wM315g1juazC(y+x*yrqL3m9;a;x|m z@-uz~ho?s*+lqr#-}^POpo%1yV58l_O4xHerO2B~HeRt(_&w<-8lG)4j9O2Ap-9pK1ES6F)?_PuJ?*snLvCWcu$MUQc z*Zb>Pz?&Y}wi$%OwCE+jhDH4q;^8QbT3hL7z@b&&R(*0zoB#_OY1FO{Vr;{x zrfHIK=`8J+b8J4zR6D6}O_O4e0ljHdcUPk&Dr%2T)8hUnV~6d!BPN^E4(@b&e!69> z6gFEt);hh2mi^ae`xgmW(xjRBF}@3`1>ol4=fW@5{>7^tSw9(Ss&w)TuIHgQX|Sm0 z$<1q@VNQY%;9-qA#stpEQw*mFG(>U^fAnv|7Nyl~+Mj9n=z!1@u_tK?T2!wo_mPfE z;EyHhit41iQN365ReYGI4vcBl0*igGls~ZF|Hg>lmv-|VqD^)g&7G zbkBLODC@XN=pb~zXsd}`caY}hc}pDjWEoQ8ZN~LMjizD9{xbU3ys9Fg@6++}71-d>?jjp;0jh%l`sni#hhQ-ETA7p+-tY=?8$3 z*YCQs!b)?>_v5a`uPuiKXPOfm9iyxoB*;mFPMmV8`MpkwAuPX3=4dyGXGb~}@@Q!? zI>oYk<=+ve1tWeJ*=g0{l*{lmMKz{<-H`C}dxjewfnFFF?fh&Ma3dvlI#PCEM((?h z097A_c>h!1*PPS-Pp#~Wv^%uy5$L3!44~6p(f{uYyZnv7EnKs0b-)Pp zu8qJu{@di(|LRAS8q`}r(to-#+{j?~r}rU;k2X<2ZFY-;y1_~K&k6s%5H!Fx$BfteY zRSL)NnAf(bHaabQ(g2r<=SB_P3N0R%pb}*4zx690#(vbwks5=Fqxf?pkg+~#AY=cp z3%ec8jWj*8KbwGY80E%*D^tM==W(Nf(6n}>>Nb^&IRbo`de_1i2rVreh#$_br#6PM z(bvGQ970po6t)W>XDP@>^*i`f_rp`SVcwBh%VC@JuNQ2UD;nfLeQf)I-1Nu(p$b;1 zqn`Ue{!3zdkhgDs^!Cp*M&2HmrZ+jrLuSRVd4pC;$7|$v{Xd|29+TH2p5C{#R+0BV z=a>Gk(d$xiQi)aQ>k8e;ik)rD?Kgy^6e#f`X~J&(`+ zZ+X2hX%26f{$C{lkFLX`MU-Gg!xa$?oIZS^{|oC5ibUk#ycF|nznr3Ozx+*uCJ9bd zuoOfx`8{)60*QX*n`qReDp6SahvCNm=-6Mhdtzhv@^dI&Vg6D zqSup?Gs4)$l3)@yMxDoKz1NWaW*fsV8lmE<`-Tb5z=~KRA#d-8YqN1FNSHAxNauL( z=OmK?smt@Y_p2=bm+^VAc1>esJu6${h-;gai;dpLlU9>=BRnqr#8cxVE6AKI+a45l z&rC&@yG8&%k`}OIrZHK_(>c!>I3H{ z9zlV0<0EazoZ6$s4X2(N=kt~s8D%kUSK&@B)F0WkpvaJ$Jix9s<$({2NA~IMJpddfV^Tiej{6X9ul|b7foM-~1`Ys5i_dhq-+9 z*K>M@L!fX%24*0*aGx;ffS{5*lSS>A0f8M(%B?fF35dXsz4}35zxad>iau0DfB?*P zQXzd{dCK_o|HD&9NMkomk_uI^MFzF-0aZ3WvDhnUl&5hRUeV^4YlfSrN;m!&y^fIf z*KfG65Vh%#K-S9Sb544mv`RK8M5bBMd0}6Oe$mzWT^i8&OX=3;*u*1Ac&^GIn(r3; z=kfP!I(3`CUvZoRgu8?9vs)W)V+n*F19?iO@8SG`eNzzG=32`>wLiiKGj^OUdZKwH zn2;`ZRax}1jqhArJ39CTxP9xO%TKL25nl&ff-IoQmWEFSpl7&uWM&)yOIc#^)pA)&O3&3EP-S z(`Torh*3i7mL@i%9_4Mc(xQYeV)0ivL@iK|Fz!?MqV-Z}LU=07J!9FSW1vs2wwe*b} zinG-{Ctm)z0To$xh~GPBgotUY=x0*w_&dXmWh%46WF%%j81eIbttOwz2-y?g4I?hr z5iPv?t3ygv1}uga!e4dniv1nQv*WD5{X(zPr>N@M3Iav1#99Y{bA-nm^>cZVqTM8L zS0aix3}$owp|CppJ~)|q=A^EHEYkY~fL;tUL%@BCsJfh~+5V{FjXiunfY$g1QpZ;q z2|$t*yl^bFc`-y{k~!B#&)?$rA2RRCbet|0V7bR5UED}E zBy?|JgVjVAr+Jj`LaRri{5jD_qL7*f0IM_|v=isEg@NVR;EskR}0Dxgrw6 zc%hJe`7@Qo-LeXVMPc)1OSg`lX>S6Zx2cCeN!H7C6thBEZ`74bP%pv9-tK&kziV*1 zeW0H*A!_zZkq3UVXTI)9d!J*(CrF1G5Dbn0%OfGqdD~fAND=}{oDXW8=(e2=YI`~R z(gs9|me%dSN_4f(jrHOy#nVmr2@5P;?pNx3UN{&af^^4aZ(K) z!`h_%S79Xcys1do=UI{*bRW31%qmM=Z?H*LFs+`U>Fgv1GE!;kM+n?RrX6y$P}rii zIm{c&+}aRUoIF$m&%QB$`J^FQ7N4R9&5YgD=+0$Xh^MvoK)!HK2kI28_)WQ^+*xcq z=5N4}lofoaihJK5SChau%uq~Lu0G}KtZVlCb-k6bZ4@` zd7An}g1*vAsmVZHqR#$jp+G{?5F_VYQ^RkTQ=7V&Y?hpqrRj?Xq{|egplE^29P&U&HeVvGKR3AUe zgOnJR@Tcq|UG`&93oi-#8hp;1EAW^lf*SOR$3HRstm_g@PNn|1pA|#no%P9s*;Xsj zdjP09bxqNo%|l|6;|EN@>osv-6*~!#;>CX6F6^FU{Unj1v4ujb>aID%6D z1CKcxM8x;Wn9&9Ihbj6UEw583-}{hCSqpEhiOEzeO_635Rhqk8)*Ww&#A&lF-JO!z zb;Cn=j!I+RYK8+#AD0w=`DR6}{)o_ElHh0`1_+GIWpsfDC$K8U7=xt)1W&ctc0%jWC>35f z--s)OP-1VW?)>>h{btmW3jQ;E#=WnCJJBGcHRqSDUlI*u1euYz-ngr^^=U|eM6F!F z?`MaG^1yE$kaAzF^E-jMdGsU@-p_u0!(X&Iqli_>_k)iDuPOMxZPbiwEFX<1gN8G^OqB-Z# z*}l!Zp>VmnjEHka+RVV}zr}jdxBI^dlk~Y3C`#~cn`8wAG6WQeX`+Rpev`iA%{?WS zGfEXB5Yd_p`t6tUo z9}s-*;k{OI3bnY2kzqRZOe9YZ-HNuBQmXLn_y5?SPNa_OLedhjbhyf7EfoOT6Rj~U ztAtUqRa*qZS|S>j`qlB0k>v>T0jE5Zzr_>*n#}wSRJqqHZ6GJ4TOBgR*R0iTm?o@rQ%ih$ z3}~jpT#f1pmo|~CfQqBZY&Eb}8oo;RSj9RaYglsnVQYd?Qinp*E{ZbF3&BVz{9tmG~<)>-0s_`O` zFzcHVf5A+A@E<2y+Ut#RCRz$m1HmmDE%+y3j%KszTVopv+>)8{`vKPQ zR*1`%__sC}73z<_0jHWR7k-zHEht}39a}mQ0({*XEGbFj*tTTBWIC|Eh)Om~KsZy* z<6_j!^InNUsHR63XvvByF{X$?m^NrjLa=Ap@nNWvn&!%aSSC5LqEzC|WZ+VZ1Y!`l zVHpA#`4t)WcIDMv;ZUlpzk{K!D0J%{kK{YmDDzEMw-G?4mK_oN*nX`OWxlBV4=D&v zou!1!de8HW1Tf6C-2Pq8nNjd~EB+eldN3>`-hi;WXx4TiHFVf`9Y-(=a$s&HeQ5!| zv=pgmqp!@pYbrB4ICz7t_3BFc#bq)qge&C87mOb@|QF=4hXF)g)WC zd_y_CrwxdI!nM!2Qyi-$}5bARhFB zjeRaT+!FYy0n9o1dJA}SFi@H1Z}9)pUOUE?e2jhVBodOi3u%3JB_QXWFo8OwfP2uS zO%u~(by}?EKomnjfvl_r?sDQpZUDCY1^wK~o&#vvMlU zp!5@N#rSI?XkU;*9W^}HBcEh5$d&c=CewhS#5S>1$6dk7g`v&*d#dgDM5?`hIh@_*c0%sN zrJ~A`M`>BZ4fBY@9JUKh%uUc`ae_8N4yPvtWcv;8qt(|NeN!2($nbsV{*xA%7-K~5 z=@aECfzHCrT&Z(if%7?vA9`v`zsZl@QZanM{+g zL#QNe3h%Y2kFck&2Wx}by3Rv|RwHRga_n$ZELsVIzM8r7K27>T24m5z$0?F$oV2%f z>rKFh)UeEmkuDKO(2)60u_9tG`{fOcn?J@SycyY$Gn(yiwjE^Xjr>Ls_1C~;f!Dvx zOcn0OX#}9f1?scF&jk;x`6-fnWqcmK`0zs0?Sz`1B5U0DaEbB zm(FuO;o`rzw5UzcYrMC^2}(A+?)p9Ls3|R=#mr3qN_8e5bS_oWA0!Y&>FF7; zXJVl~-Eld3Ftx0ZEcGpOY^&m$9mZD^1M{q z_vRTXc64~0Vie-sc>U}g=vNB3ChbhDrwdX)R!wS}@TdGT>|Lhxh9 z*&DUjT{SsOiW2$|as`k{+(n8PkJi|~b#UXx4IzLy_;64pHyDDb(}6Ykh_4lJi_hTK z#smCq7%;Coo{myI9tDqdFyc55pg=2;>2r!~<$6NmDJDUf#XtL}{zc+QoY%fjd8m*Z zqvX~(I-M$Kb*?^5`dhtJAt!+YyCWCY$1~KJ>G7ll_gbQdcU7Kjq5rdWqVsAGw}{!A z>5;H$=v;7^xkB&mB zEV=tUv(h2>GC-I?3$1yV3Z24HBqjQyMR{#;Vch7#pcyVLv6;_+VET=t z#tNPe!jWb;xq|a(h;70Xbp&5XttP#%%H+>4;a2mjeVk|(^H?SC<$u`esJ%U1pTfVW zsN7AVHlwPP?3KqJk6#yn(L-bmT&P{{jp{@hf9q1*`Amv*dbH=5HQaBQC7=@oAssC~ zA^6i^EIa-*QC6q7RBl(#5b*D&hbHvWghCC+@<93Tj;)fWWYa~?x;0^LG?aQ8VN1ld z1;~X!17a`M$sogolw#U*4KaSF`Sw>=9rB^R%@G4E?ZvPul=F1TAK*^yEUMg`PJCbM$ixbDu zzC4^PxzJze3IF!=Us<(3=P&TnKy^r#Gj+`0KHsx$Gg{NI(L1|7TyqF&kPD2Nev zYN+JN%ddVeR(*OJ#zDCgjOU?K@0~+(qWVieNC-yZgmWa(wZ*RHD>-hNc>W`G%T0sJ z%gk(C&(gD^IwvYG_Pkv1VUAdmd#Y%DGTf6Dh35BQI4YH#c;Y&ys8XW-t|Tu_)Q@*Q zR#(9rnE^!e^Lq?8U7K|7)!4oEq{c@Va$P4NP53>qM}kslxDa+wR`GT4c)Pt?OYRT+ ztOVO=+>P^=udmzFw2ak@-C-^oC^*66(r?B@FdZDqWz9*nr=NwOxw3wk;&;qf7C`x*JEWj~LV~maBBQcZL1D zpngRZm?1vkSB4gp&m`x9l~ge8LdY*n9QN)DMKZ`4fv*Nwa|alGwjMIZ=j1)^ zC7dpm3?2}Xvu!Y26L!9U%UG6Tmr*wgHgVYYvoPV!{bm5O_gr(6f%VE}INmG-+CL#7 z8iZAJK>s+L>hfu*vgs*$MlwP=TUk{I<8~({j*szr|Cu{=aN#qT9j&__btmexX+ks; zUIdOLwF*$A+0hQVAkVNYtwtJqbL8ymz?}|Kq_ggzQ;41XX)oF$Y<OvHLcmf1PME<{Rs2K?n1t?xE`BG#|3o1U;qM>N3rqa?v`-C*Elvip%5Mv1@nxN z=&vLMXH+EC)`DdmrG3J_3v_WZx^o3tq?esM}FaLMN~CW2=^bH*8O1nW7QXRqfI z_VasY{Jopa!@7D=TlJ=3dFLN8zlm>g6BO522LEmfoiLY53U3LY2-i?7|CHicg*1ei zq+9Z{0GtSat^k||4S7t1#y|$L0dFr3#<57j4Gyi62tS_UJIs6l@<<>me*EOz-CTga zE`2bJEFG&TJuHmH)w(xp0KG|%DOjj$x2Y(!I9Cw3>mTGm@X*025+v1R0BgX2ev+wZ z5Bnh$%oXUfbLoJOl#lXk00E<_qlMTP5Tv!;h7;2uCjEluXevbQIc)@y-R*JOZ7@I9 zOUaCGZjSh!0>cwAXmWlC(%5J`(RFs!MR0aggGy_=k%{DzuZ5bSrp#0iD5tR_=QpqZ z6O3;Yv%=?ri#U43LK%Gsa%!zVh4uw~&Fn}rtwn#w96QAF$?7u;V7`A2CHJ{;V0z8i z-M>HVVtUiFh*==>2eg(2Y`tM}UtTTv!8>2c=21zc5uq|=Ey^)nfh9N;+Xg3w;Q?L^gL#Ef0muJ>U5p{23Fj0)Z^=(8zhB z;&M*c(Rd3_O3YtoxcSKQL~()}6wenvt#73Fvp%gTxx##c!UBFzlDtpLZ$(GXJ8|JM zaWi)(mkIC65d?t`0A}%I&@<{&Ugq8=4V4xzr;=~YXWgU?2GJX(zS&K4)7PvP5 zg%07tIWlmuu(R&O^ymFKO6MLnn1HNG(l*-b*>T&6J$b+OliTZG3|^QR|}rFG;$3&LwoHS zB{%{e2wRh>KR8a4rfK0Wov5ZS;5w6;yGdpZv4P*d{b`se$mgkg-u_uz|Gh&(TT+(H zmW+|3VVp3gj$IeHu*$=hxj$7=USvTocE7y6{%E=YJw%TEL|)JWmfdsVBc&Ab#>FeB z)Mf2%L3qRco9sf$SuSDgX9Q>HkP1r~CGiPbOR@OHo=zdMvEoek(BJgvAhy_8JC#vx zT>CFYI-Z__@8(0x4FboQy7oaPci-;?L9n&PFBNgvJs0Xv-xa;sjh3}-ZKz0)?O;*f zk$-4n=MXz3nRn!ypuHh7SKMS))Q z+KpCokr_MV8Xki;pryIuqB#_Vt9CJ55f;g*3GO!qVQxA3*G=PZCBUVk5#8ohAkx6CQo6x_qS)BaFx}Kp(Bwvz?DP2zQ%F{ zh)xXr^7e#6)a@!jD2Hn*g=OxT&)FDo4>1<_X=Ie*fXcq?ow&Hrl1EiAQ#}n7rfMsp za|(#!sBp!@=sznw!i1BS3q^%X5McugwJ%%9MrvB* z^c%#r#$CroQ^iy$2>|P+M~fc^Oa=x(fCHf*%8O5-An4I6k>O|yx8OkF+$m&G%k7C# zy0$2A`CmUXi-L)KJp5LH0YPT|3<03uxMnxf{JEa5P;j*I>b8MkTGBni>3^HpA;CL} z%~v>cVgkS@KU+*-D^MVb23)L_7TQQrp#THHKEuQHIfj8ef(wmyL^!|rrw74Z*HS;3 zn0L&MCr>PE##2$WAcT}8fDJA%?SC#64=VXX-4Rwnk1)xLLk6BnwiX%lry{GIp`pZ} zMTZ3=->bovphjPRnmhI%j~0CSuwgAU{OV>@UjS6PCMnoga(3;@@P=4a8B#Dh9#lBe zZipHXS^eHHC#{mH-aBYF2qPhHQ{Alshxc;O81V)uC0jlQ#0fcg#a8LkN6yE@_ z;uaLR^3W1?Q82V>Bq$5k4R6u_dea`!j}?OG#|i=BV}$??S|MzLp#?Mqf+5%{L4dad zt{@;h(HU1?TuOeiqKOjSwL-z=*HmJIf#bc{fy3p4zBNR_)EU>DY`W3&`Af~MxfQY= zMFUFZ5wxceVviI_MehuMiKcK!k$=U5i?@S-qOCE*lVuLV`5O;5tV)DaFEz*knv)>T z;BjUJxoK%gOQy5tJOlIH+ z&6$deEN(m14QMQ^rYZ8UFs`PeurQmVtfVSA03xI@P{QEOw+i8B#1Ugf`^&oI3-u2($ zLac|tj(_0|fWd`l1T0dkO^$$3S8;rY+@~{9&;(%$!u<15S`Tts*Gr)Z;-=ON0#B{^ z5aTmPjb}Q9+z+KmTXzL(6no^jZ-ABt!%`nQgbLdQ*?(ZU_W(g|az0Vfc|Mf2AT_>uXc#)NU&>RT-9aW9L;7c6X zi<=o$bzO9^lQxoe`3;3`0QlCMDBuNCSvsk#6b%|XS6ATKFp-F0Rl?DrIyT~trnqct zC_c#OOxq-IMs)|fa)JCk=!sdIDY8_W9`u{0UsDH* zb$ibG(rPtc<8d++9G0QIKfA8eeqnydR5TC$eROdV#iOO)n8&=NRk5ZsIkoQ=_{vF^ zH8lrA6U-qP!;fAhZ3Ibty!E2PN8}nh+A&}f9Xi_ZprXD@of@h6rcN8Bz@(;XU35|V zQK4@(QlMHes~TFturvUcB)9F~7nO{AU3g&NpMnFXe~&?2=>qRLUeMr&4@jzqa&!dN zv-eyhvTbY;<7ekebD`{8r%?lj#G=nV9q8J4TM11eui+7QgwkwY9R<&aWbr-h!d zCigLv9N=KKy)*Dvr`j-teFYwqICzAS){ng*@RW_A#W&yFqFk zNS2$LctLf=)!oJo+mDjtwkKjuCRcud*qR5{RnWbLnXA_%1}7izIl+XhIs5L+Cm%$5 z>>;c+@o!gLC}f`-?@Pg{tmfPbm6#tVp3?$LR+H4E#WPhU-2ocQEDaeo7no_|O7XT@ ztdl#*G)ds#m$cr8C2e5qCC`qzb}8fK!`ij*+y@4f&?l}t7~f&c^dn7h^0OebOS4lc zvMYui&o;pQaroQ^C64kAgMQrNi>2_PxDi~#4MaKi`HOq1TrUjqqHt!!#c4QZRe-?K z6;Cz*cu^X`SyqLnZeIcspIRFQ!h(}E0!atuzKQPAgOHiNXVK%wH#oKu67&aQI{W~m z-K#nYjH+=tYN;bASVnTy&^XW$k50)Yg=dN|>gGC+dyL5G4i_A}%+(D>f2t#jCd1*q zk-ze+B&yE3q^E~GX{>8gut>=p87C?ROv*A^>{-q@vtcL2=o#+`=RU5X_q?42bbP!m z8+@bz6H&bZw~I_4uNnrvWzf*5;*0mn_cOT{MEIfh3WZMM$k3O?iVFS4*B8PVJ$`xF zLgOccfkY7zqnui%L%4sywClikhg%=>2ml)a5|pD+5#Jvgt(VW#7-Mt!eO~A78-LLv0(}^FmR<+ETp!dumW3w z?o~uz5pz>DOjo9+H6<8R(rT*Y4kk>x1q30`xI*j5)0MzaX)`jFUWHiaH z5r*08nvMLlF~=i=H3yz>NUsrQ?|eliQ^>BXN?-tZe~n~zQPD^l5kxxio$>~oti*ma zmJy7=vi8_u)l!^xT2#-5D8FT+@n#iTFvT=A#k4M7(rb)K$M|TiLg^^cYYZ(F-A1`Y zpHvjUaaBpDvjmKOAea>ZqBfq$pTsk?7!SU`$Wd7bCYN&VcAl;Qfyz#68lZ)N{4ar^%-3v3AKzf7Gy0lz{B@Y@s?D&}w4{gFNa z3x*(WE8A$y-#RL^L7*_IUPihtlMxeD^u28@!_KuXb1ytEb5FG%bAM+|l9i-GJigi>Q4Zsu1sk*3c@t{`4#_T4lbr|ij0)9)WkW;gu> zK1MCIU{86K|;QFVtfBzy#W0@OZ`p!RWiJ)gqt3dIyvGqEbHclO{ zb*0(A2Wt>PD{y-fis}sgoy31tb2q+J|2v5kJYg{zM4!mBoGFKw|RZO?U*gI?CW z18GE6a6M6P*i__%Hb1$6X`I$%{tqj2NhOUGm)7MPWtmaD6hH@(&~)3*39G0zq0o9&v}OFTN=yD=5c=9# ze6Oecg4BPGGQ~*amzLZkEAwejUZUYcYptd1jg`txSyCGgV4&$vzA#}V)p784|I&Rp z-{{d@`sgj@{sQ{L^+r0|^~3OE4#4&P`7Rjn=kW72;PawPu;*h{u=lzD&-UA1tIp+P zR^Hq5+oyBRc04x5jkEjP)A7CS=Z*B(^eRFym@h-|I8k;kY)JK~C_0(RPFET#B~~kMm6N-p0BB~l89fd!H3l3L`oZ>RZ7sTnVNt3?BrT+jB}M0I z+irT2HSvxygl0^#HNR!BCfyWcPL$*PN*SrIlDDOnN0%M4HLjZqs2LiAMVsT zvE*OGRylE?1*mlxMb|}Ft&PfQk{N+tg^__f-D_k2mMxTyuYTcn1Y5O)lxc-`2`H_BR3)|2G08 z{5Jw5^fv;8+%WD%tRr9(6J*=ImX19J>|;7S-Rl%T-3Cgm<4?2(+E9JhiWnb5S+W#l zTVcVST2m*)cCN81H<)Z1%?Y;Zt1_Q3qS_F=OPf`6nixkXYCD29RB9+La>%ci3NSUS zBpoUB>Yyi?ti7Pjs-nxSY3M7#6yhAb<2Nv_pi_l2Tfops@J%@pFaVt>r4Bngmiwm1 zGEqufT9_dx9w(D;+feqzxfDIG?T*L%w?q)QaZO^@A*A9Mux(0Y;hj&gl=438FZBGz zJz$&ZerL!zU)EkEa{$>`t-RXtr#pC+H@!M|^%NTH_Sg7Q;5XZmCveb>V`V>3ZJ3>{iU`DMx5W*V+Hefz27VZ;>$NW6NGMZ-PiaKLGS_4&RE??DwqeLHvL8lx@m9H)o>GMJYleG23wXMCFaXZ~ z%zI>eh6dH9nEcg$cCv%CQ`Mw2$jhAsEpo{-Z(Qtok(yt5 zP7o+w!LiWOvD$*rm+xr>@*$}53rsXbJ&{6>O80q0xP6&-$s=$-k@M+<6(!8ks&G2d0o9xDs$net$Y<1%)(l z1ZEU)Q*%v~Ngc(49H1QriNz{&M1*+R;A&%Z$7e;6;>+MqBYluWaBvAXz$HQgI(m^ zVxp6&!7;Y=h*0b!CtyZ7+fn1wa@6qrW721df0IS`eCa|l zjv@?>|18tWy2C2fGMZ*=YmPrUWs&&R7;(PJfq!pwBg`Qu)RnErjhBk!c?okanYz77 zRY@(m3OprIuSOJ zOsUBnso*ndPR)84Amtv)%I2ODd|4>&F<01W>D0)m{S{-HvsP=rVfY~tQn3QV0OjX- z{;01sI~2b?I}#vY64;|HsL$HCJWyBGYpMkwj1Gla5hhxuLjk4=tzeC~j`S2!$PgiT zN^l{u)FKDF9GKGkHs{KMjT1rCAE^`2$o#dxt``%ytytqlP_^7-2Ls2HDsN_vukfm{ zwW1d%PB$XnR6|@GqDOL-;Xx;Q&7DY&hyaCRl~YW?M^p<5j5lTI7s6^8)RmQjlvl!p zWHq%l95j=O8B(2rcy0;9EWM>ZP$Je+BH#DKS7x9|HKB3CV4w3{T$CHEq*_ee{la`s z@x??qkbQ83wxxlfWHx`Da3z5hTBK+q3of5I>c%f;{R;?icp}-$H zkyFdp*|77#D>we7xI-!>V zK!I-a6BB0f_@hiW(q`h_z>%pI_D^qQ!{#T(Ql{(Y(Kgt@{>PDco#Bx~)N3B^xx@F@ zJm9it=Yt8T(Y;QyK1sKXMi7BP1EBrDr;lBNMU=z43Gp;21QnD{tF_1G=PhIt!NvH;E9C0i!GEaxP#YNlVB7z>7^M|#)8KlT>i`*&c+uzl{Bz(Fa<$JA1Ks1PI$x7y+D)0@QJuKOLh*W zK06=lj2GTD%AY;lY)RWEDzn~HM>q!BpoKfu{-$(j~xq&%78Nmb^#nQ<&Yx(N^A`v7HrtVOy_Z#FGxqRCMLk|t(D3{w z`SX_w%q|YZQ5QWdZdRhsMT~R4$l;((R*<@m^UhRzOErhSf&(>ni#v(AgK}*8Qk_#8eBPSP@}jzcE7Xv@z`oy7DJDBLxsJSQyD1dlM0AQl`b z3^ZTz`tpI3J2s9gyle?r@UPQAVce+}0p zbh76##WI?LbxaL|C^oQU@f-^*8188o7e_U?USGxVXQ=>0SRZkUGKrdSSOh}*etBWw z#!BWEEA@|blA5ny3HB#Ngex|ZxafCuTBBsingcUEoXlhkX|R{gfA{qdi9U7V=d=0M5vz>A!pJtPApVZxCqvmsc1e}XQ-RV7(QVRSz^q0(pl&*#w)HF08> zo+`m_z36iDgdx|f5Xb}U_Q6uni44TVN}^(?yUrl!;w#^KF`>!z@U`0bqPCL!LsV?! zkx>q--P^IwjLV~KSm=?}hnv%qMTal zR%^xBv7(~Gh&$0*-L+x>PS?32GuMvvj&PvC%BMwnt~`=`+Zn$!dB9dd4Zc!ST~oP5 zy_`EDfwI&8VwnMx^sAPURqI%J1?eQ~iVPzbpBl${f1>rW?xkLJ@D>Jd%}f_5wmzKovrek^JTzC2_ReNI0hf1bZs2zGre9xZP_?@i|UUsW>s z`@K(IsZ-(;rJ+|ufj>NKfBx1mcxz>^r~e{BiFp6r@zM5khq}pd{DNX`Fp%#A9g+%a zn^27B=N0;ai1$$+vMFGcb1rvi#v4?3E%18p-v!d_n4E9DelSNKXi1Q3?dNXma=>%c zS?}|#!N+U>w?MR6H~m3w`~j2MZxVx_vaTle;jWX3l?I10uo-7`tk}q7)6{iKf65l5 zw=?ALLUSWt|4Rx>`+Rtr{g9M79t{s5PTMo-Oq$)}c>Xm3P|fr`7+Ykzdx%DVMzCba z@Lg-6${V-2wMy~&!Tvmv0Q~LRuo-y30}`T1$PcDG>n-suGr}%-f^^6nc5m#?F}82* z2>Iq^f-!Ly3Ig`(M=uIf6Qc5Xf-$;ecma&yh&nm!0xf(%u4m2}AIpFLA$D80`6o;3 zTQfe)+v*uHQpn3_O$1;g4GqE1GT$-@Mn7Xue14zDd#$Oye|?#r^%Z2e&%pU#5mP##-vmz@s&cUi#VSJ^~6@}H9;VSLiEqgx8c z8J#c=fn~WccWoh0GW%!bR?;Kr_&dA2^y%wr4>>30H#7ID{vO`6B~g`VZF^uJjl+vG zGXaVXisBi3V{!VN^SFo9;KP(7UcSaK!3tlj9+stx zGDIn9IcVRW#sCi%cl{3=NnRjRDUvE%;kv@?ZeY{qh7UW#pD6K@qwdI{x^GNBAi#A5 zq3m)3-&|Ib=1|z}>j2m$KCEs?udR6>PcIfgS`74dz+Kd~I%QV&D|%*BZ~$TX+3e@( zbl&HC@8>1cmhWfU#KZRc+Y8kve5xcCxOR=!IHrO{X%}p6O^BGiDrZ-lqEiRC!1%Q# zd**m(>xgg~T&-;Aa>+oaRr$3u=CnK8?m^u!4=SNxMY0Ya>hxuzBT#tjB<}+HM{VQ? z2+dVO=6dug6TuqK4c3&6482v_z}lxYwesS#t}5;CU+vP=qJD5WYNZ&(KOgn8rBtoh z)7ngLs+H9B9}Q3n20`is(7~BvA-?K388reur1t@H%77Sym16ry_|3*P9fFHpxem+N znr{m3Mrjba-_RX6zu$R=#8p$5@PoGKU`v|ML%jB_wi_yzJsAV088tA}Nm1V|Q3ihV z*#7h<@(K5h4kwK7k?99WCc#RP0$#(zaB#OB70JK+2pb^vTAXq>q@dRXmruK<+?j<@ z#y}~9#GkNWnnm}tf|eWkwYg$Qbs&}^fD&eO!r;k|%9>6wd<#2SAJR>PxH_Cz@!Txh z#7>{)xIEUS4h?sC+4|l&ss3|QO3ouKlne;JnnxdSgYpa6%%Mh|&sp}sLn(r&gjX)ffY|8ytrwb`H7dZJ!JlnTg-?M(#&U zd>s3XPisd^*}5lilNxjM=bUEHReIVj2t+^eXLcy640&fV-{s?50ZcScqymodM)>jI z`}m~R*f67PQhl5**B182LR7?Rcl>Dgm=VmjqW4@}9{Wb+NBlXpnKy}!ueTGvv&j6{ zo$`zR(&X!w5AkR>N8=D_tlz^9RCi+G6hl8W-JFSr`V7EkD17l(Od2Xt3HRI(qvI^d z5lNqI({`VwmMTac!u1?5tY4hZPn#8D&^9^_ycSi55|-K9g_C_p@%$nNXB}iawc^AV zROYxHQ%r4wB!!D4ZOCdEe8l_apRqfCQITb9Dd8oq>l(5<(IB$iHAG;NXS_+o;vCt) znFV2|!sfsH&mP^NOtgozy zr1#~8Ov&aE1gM^AQ@2wGkJ?JVqm1BS%a`D`%ijTtdY0_));%10?4 z)NUveA|!<|h)IO9F}B7RHVBW?P%Bwm*MznYS!o2bDFa3|!PS=a>WAMkC`1}IBV7D! z`eRlsNpGB_nH!!GqKGoF^!Ik51U*|>$_6aEA~#{D#Spj9U4lFu&QO7TW!~_R`l0f? z>R~Z&orN$?;6M*e6}On18)bDo5A>9I+3d(JF;3k}1+Ax6)JYBF@Noji=M6wbMJh6up{ z@H@wjPGz)PM@Z)d%YVjl6Q5Owk_))bB z++D{q`%M~@#wax*eK(0D4Or^RPXQQsp;cUwh@ry(`a@+UJi-TQNWuf&&4X&tI(CWi zs6uLD`G^X87^Bvmd&jvv1z3<7*Yr~bjI2Crg~97F3Yy#jEcRihG`Zh;Yc6xXoL(zf zc=(<;i!>SG6;sT}Sp@xP6zD_0Y&Z0tY1>64OzSVxY1PtpEj<+!u#;Xj67DW`1|>)T zIBd5tOta7zN6lT)==Y($zo(JQg^Tg|0h^?>ItbPUTY2UfAHdo^r)o8!*$3ec9en)yl=;-mr{vCs0PK`<{9C72GBJ6$J5olA zaF1l_H#g+P<>eK!q*3m2Efucu70gLo5X(43`Um~ygfCzV`>}`dZ9K0>ksQ?A4KN#V zO1iu=0BD%JqdKcF_tWnEsLTXJ!;Jv9(i-em);$$khGM-X8XRoii+YRaoImZsFF1dC zbN*~asK2Vop7);9@Z1tTJ z8+vA!HLM;Q89K*hM_riC9TQdQn`(zZ!`m~(3+O($r0@Wva(ZSpKq*cmqvV&odHII? zA%eb6KvD)!i{r|mDL(5S*A4s{!nWJl^7urk z$$opckPy#}7T8J*0={_$i`9a;-glc@>AjU(fwPudopqS&U|B(bl4^~IWOW+NErJCM z+@UZ*{_ntDdkx~@`Hl?6N5pxZOQEbzwId6BX%M&x`{Mu>0m6l$^9db0`_g63gJ^gh zm&@;%OnL99IRud_E3oToKBeyy$H-8qotkyw8sG7#)*7Su8!rLetiJM1!IcHFm!TI) zM0@2jNNY?~!VMfDhua&p42@@w`QawIpa(BK0j!*0XU&q#3}aYa zoZt%Z@}k*l4erUJ!BD)jTQ$Lb?emZ6Hk}ZR`rs!H+x{rwm!>SP!dV$D9i7)VHCg@r zaS8yE75eZIvtmw$s%={6v})9iIxdhU2P>oI=*KXEjK^|oo_W!i4Yh@X%jSCLjH%X` ztz_6RFlFUjxLr3QT*9w$SHqyKdQ`!`xR{mV;&E_#oP1Y8|8A;c-|G`*Zz$iwG2%zl zt>|6H#*diM3>~*K^^Wieww^^4j71b0j{1b)9wRn~E-BFNfPf~V?ln(;R6B%;mZZ(^ zCH}%ceuiql&X+MF0%RuWll)~SIM-oehT01L@6w;>F(kUmh95TShdlM3uB?plgEs-z zwcA8_f;2nNMG%M?Yy1r-JsxMs&YwV$Yv&|s@OR_yGR2T0hYLaP9-?w#EB4jKlf=+us{y$a9 zK@!K__%^;1>?arRdY7{K;Q)&zDn2D*0f>hL_D-^M<&JxQfQy#xpNH~E+VG&QDtmv~ z-jT->BrQ~u(5le7sWD2I`*P9PL)jZ#9v9kEOB|M7HthhLqhNV#lqk*PsE{=<$Cr*P zOb%4u<(+-@o5Ixur-}7%;ceKk&Wa9JVwoa)WoasjgJ&q5|5kKt>d7H>51j)mI-Fbs z@#rD&s#@5*|)!LxQPW|fH;@Hb2D(KBv$yJHp?Gqr)lrqU#7 zQMwfIGD-Xr&0?la#1_Gc7t%61O#>xK&P}R@(cNwxMG?cKaaNSv=rC??c!cBr=zF(= z=Lf1heS%_za z9Tb$~Yl_&vh022)iWzoMN01I-uuY-!{?uH)@Z`}D>rwLQd_&G8MvUW3*krX=qj$ub zT7M|I|^(`dWa1; z-MRhwh{bh zDn*4BFS5!}{;Z#d4@tQt*`ahYcEN1)q~W)#mse+3myMj;Kd$_=#1u&sZeb#_ym z>wZbq6v*l85ZOzoFl{@^0v~e*8R$?dST+(B{Af0mcd_iXxToF*88~?OHWGoge!Hp9 z6X_~#6ih+)AaTA{T=@3Vz}qSLMk3JRLb2DXJH?yf5Zff?Ir!piHkzQOxOGP!@~Arc z>ydtW;Sc#_gPPhL#vt=ntga|z(dwG6XxLsx&v#8Ua26`O`MMalMWgYa#5`N6G=K^) zjxEzbqUcgrj{884HxL_%zi^mrBbCO#;G(9`9%fohy>dgl-)}U@5#qc0>mAN3{kT00 zW0liy+6dRD)KoO`P$qSnJ&l$eFA)(^i?D_m(z}5Kv9n=kwjw=L&ZpIf4Du& zbvy-e!FU`(jdVGF?>U!($N9uB+oGmGd&Z!7|I6A2oocoXOh&SZZJWhc$=jvcMH}VAZto}0;HZaUgByN_jP>akd{Q0ci`o6C08K%rhF|DJBx_zi zz<;a!RuAA~&F_n8;J3fE1uV7veIZVLaJe|y?!%UD*WH;0)S)l+|2mA_e;vll5*3HB zO&#v3jm>VU`G(EzzXs!r@^YkXj2GkdiZT;-kgHo08p?UFo-I!qm* zav@-ihTRYrDt45oZWT!(C&O%u_znuQ3B{MAO^YWyN@k0X<920Q4uK_G7Tj>0^w`)< znQS^&?LBsuwyWJ*_?}@Uw2`NozWAOM2Lsfksy;1_RhKfKrJ2b0h#Fd){xWRS9hQBU{j8+MVz+(fV($!AQfp3f3;v*0hCQ7;1CLF;hiS zH`g0g=Lh9e1r)4VxmbsQys`rR=*G&hm>I$8X;a2owv0(V%DacE1<>&b6etyqNfyQ@ zD`P#%`@f}I(z&`EvMe_GZm9=zW@uNe-@}P8&C!@@iB=k}*0qQR=O!zK5{xMOSe&uG z!8UxztFzkwE#dkOmKt(_SMe=!d}aY$GV}UYXC?Nh%`B$@u!f7rjxW8ADMIVtoOjB9 z=DgSc$$9_ey)plr^ESi19HxhqT?Jb@sk&X@ehyA%@*bBakbJU8P-7jhm@LD>i2z(Q zQ~5qGf4aUu*Y>_K0keAnpZk>tZ+~igo)i@06AG=pX}m3FACY54Myco83d6xY=BX?U zS)Lw=Bdt3WXY%&%cl(gVhD@^PS@(K;K!Y0opF!`cBcc_^@E=C? zMd}gVXKwpB(2dR@kHJqkk4$yENQZesum7n5KM1}(zAyziy>op&PkuflkA@q(A1^!j zzi}=1zP!Eg8TdXgT>1S+P&_vt)3=S&>sXQ=Iot4GeJIX854xmd~Q~9V}F=Cf-XPcEahQFa!n_iHl=q5-nY6P0S9rGy$F-7`s{&|D`l-%$xUS!!ffvU`&`GM2FrVG z=7kP@2NxA9xW0vf%qA_E@FBamJ6KL$&<_7QqoUhr8|~|hc%NmPOC$|S!c&(vXDr`( zAmIj7VTT6DnE88E=2JK`f3NBqT+!v^pR2m_Xk)$knm3rzxD!QCvx;y%81?r^sayBf zVd(&52V*1fWT*d|ljnbN0II1br}wm;?=$f~YL?}w^;uupDE+$P-mYhB0v-oFCjvfz zz5L$t4pnk<1X}Nm1iG=LaQ~ zI%hJM%rB1J;M=}=1>B#nE?Cr`3*txP`!LVe;akv!rIPXOR2l@_92)d4ciP0gdi(=E zLU-Y9!^46I414WoZ@WA6*!H{2+8!z!vXG8#AuoR^B>GqJP8Y-$5Fqj@ry95qFgkR_ zHz%iDJ^x4Z_8tgW`_W6rzqpl=TL?t@$aEMojMMmoey;9W8yxjg@yLeORpC9)O)?sx zn72S~l8&qr{g!ig`tqDqjC~j81IA>OyiUbuRlMv2L?bC27xxP;u>!F*RbT826d8C3 zoZ$J#fq)!|W&(?*ut6ZVr+e6K^Pbm6JFdw@uhmW5DJ)96`XIBDqOS|X8b7vbN83C_ zg^Wn+Msup-hlIdStWpc3I$+aJHJtPj9la7l81 z<>NMw?wP9xQg5K&jbr!}V3icL*-?HR8t{4&R~zs+>)?O=&ei*5XVxH%p)2A-asp6Z z&ih=<68wA(_}m1xG5uglIqQ9Weo*|tKJTx|`h3KU@LNhp*eur`SN6E;cZb^T9beo-hlOx6>#-=eRs9One#siN9w=wLW9!hRU})=yy;ofk;}vGMhlYLg)hN}t4V68IxjrDqD!Kmeh@qcA#85p-EcTR` zPI_2z2+1`ZI(nu+Mzp~2<-O5o3jYaFHq23x);9wq03|xCt%)TuitkUhYXCcRhXwt8 z8R^$6X!2w1!MfqtRgafXbc@=+?Um|G=Xs0m3FvR3igG+JK2SoOWWmsz-9 zTXW@ki89P>m~xW8?MeFwHz*hOuPfOUZ*E|@u{$_|d||Ywc#yeIFOa5S*Cvh~QY3?v zM=Ee9Qazt@gu@#&@v-b3N`hwYHze5{eMDJ$>o*hwdkuBSK8M$e3k`g!a}EBgGiaTK z_$r2Ow4IBnd9P?|6U{gz*dq9fK<-RP3&k>z9G>r|DA_3e!K(^XrC; z*!;sr>+VZYncJ9ig}i{gqtU;-BhHYqkBCsAQu{V-s_|DpoFRb>OytKrL0+;{6h;n> z$+~+Gbt4dO-|tyGR2m{XYjcKRq7@{%5QW!01&dh!4Cpc*2-FzEF4zs zA#=*dF|ll&w79`-McA94`60r7zHUV6$RWo{yNNgiBvgH?Gw_8tJr_~f8k`w8zb%b@ z8^9k+U*VeasI$N2fJ!KN3MvEHN1&0!6lfB;3+{I%FnC6mAdv|Kf9bDI|IlA!@%mz~ zfb`dN{QpLO9nw_chC#f(ogE%d1Hwz_7gmTH9bEuk&yjzr%fgIb_)pLP5Zi;V;b z`_qe%Gtf%p(9}Ng5Af|?iaUR9nokKmBk&fF_qz;*%VIv+1Xd5gnNuA!e}yO_|rYrWG42XEw&Pb+9 zlDEQf(ucvf7#qpUVC+eJ30ch$dAJ!J`yaT1Ics~|{(damxzWnisk-YF@@v17(W>XF z^p2S9cEmb^pJFCYK5V^_ZX>bpgFg(v)YSebCHCqcN-Wa!!Q*h~?J5zHlM5amKl2o#&jzh}rcq$IHM}f2M%V67r{Dg0jMBgm;kvT?L7SBa z^I_^rQvAla8Vi7Kft(wxEgNd594TT5JM=#9`~GfLo_a|$b`6kCdSYZiDicS_%z79a zOK=_bE3ywD-&748XPW6&`U_f}iUrIJokFaGsJ>1nr#=1?EKNP!(CGyBP_5g8*ek@pL zD+SL84$BH?nh~PD_$ro;YiyOwDBZNkkd}q4F&{+%p0F(xlfWD+at9k=Pf3@SjMc@d z>ZtS_jTEX{D`)W6ft&O7tz%Jqe}A2|X>a;{86|ckT>^=gQ5paoo^#Vy-fmi5b-yUn z&0dt=X;Omn*I!}#oY*+>x-z0uUG&C~(v-akWLRUT^n{9z#fl=Y_5#NJj0ZXKDzfXg zvBS^>4-f73FwX^*>_E43e%I>1yPY??)&JpkHsML>mlN}*%(T-Bl+3i7da|#H{3@A) zn(#p_Mrru+t~qp?$O_V$Pa|6mr&6;FF;V_Bp9}o z>#oPJi+)RSE${PA(tA+~p!6c=|$M^n#UaMKRV;#NVPRM;#wAUI&+pG&Hqg z{l6_ThuBkC8b3pMxb()6*g>JO9HU!T1H3sma=Kx`F;_R6HgjL9F#`vP7j3$ z>O_(_n(<|U#;MA5W}B+Wk?~sw*1$jkawvHW!pOd|yKblp{k z(cr@~h9A**U%ctaBP*qO1<5LF6WSN^#`0cv$L9qme6H$WZK3?$teFx;sS1BGxSU0q zFLDKalC@ukNFN8bJv4eEu;Q%hqyhflf299tZZ1{jQLLQ(4URtT>k~kO#=3agaH)PwBo<~TsyR9R{z?!ia~dDyO^=I}?RJsZ&P5pDc5dYYBIW|0g2 zfm&>|qEVl=3FEblOoV|9Gen5q;x?%68y;BK&HmHzix<%E`MwkykhsLY%!Q!Wne>}5 z_DD?z|N0C_&?fz*Dv{}~@gf)bfl~u5m^j?F%Hpk(-2?R+SSP<5uF_)sMa}(p)>Tf7^uzdOGB!s&+&x)y%}NgLBuX z#_aH{CHXcuvM`-;x`Xbph`AD<67YeR(;?y^w$Nc2p~J`amm9&(5~^qatFyO`imQ3n zMu9L8Ah;w1_uzyC2Dd<9fZ)L`1a~I5Yj7vHB)CIxcPBt_2|hrAyUTnV^1i=w&-u<> zcdfhlXV%_D@7}e$s-JqQyP9$+;Tt5xa*(Bn(VAtVBU|vLId$}o-O=S^_1CnJc-Gb` zYkEb4u8sQ&a1}rWI2ZRfmv-*9v-oGt2R&y%{p@G6?CsuC3rlo9ax2C+)RZLQZVB_J zcmLLa+oKT13^2haZ*SitruX!&FKE7a@!B~{j5GG)33{&TGv8cOl!}2^M*)Wh|wUH-AJ^kgRx&4u+(O; zVx{$)GU9{33NGd>t7CfTe-+Lq%#`@2aP|+XPR*xkrN(u^p+#J^rkt0nUVfjSY82|p zec@MN1JdHY(EDm73T*e)N}xcs67;yrLO&?5UY0yA3q6tjg(Q^@`wKN7`TCVK&GpS! z?G=tssOwQ-6{5UAGTaw>IhTn4qBrz@*PNL`1h5SP?S&+e2uD~)-%0r_!dn=pi7`+g zZy}Sb%|LG=75|&x5i7MPq`x3{&D;~~A}+kYzGioj51(4;Nk7$ynqlVz^Bd>}CvD(+ z{G@ZkL`3wM?2xEbHs0JK4j*mVs8oYLOgqfz6jE|iUT1)V+wWO=tP`aq6+68w)~<1cS7R z^e`!*seNN=P;Bk!*&H>s8mf#D4lk{ZcOP&zp{IBR;1+_kg*KCM z>yP}m#MkmCQpDCmJ|_uNGpy5!=9N#qpiU?XccFr&-fyBKkz6zFysM#vR=uA@5s$E5 zdL7U=nmwT@j#Xb#Q21Gefi^F(=9^g%D7Zgx&Hl|7osl2y(-l;_?`n01#JO~0$H^qR z(^piw*X&)0V~@#zQUogF$6PWcA^pTLYajDkETAC)?*^we6oBOpsr0j@)MnKmp}7Hq z${*Wx0S)SKlWCl)Z+N|=4WyNq2+@2+Ytr|*Or}Chlgs8&OxBlAt55nzAz-wAD|N4M z#F$rx&*@Eq_&8sUPV8LP}1j(=x7yoVa96FS2*Z-1ok^5Y6te)d1GqU4D-vD zcCJ}(t(s%gCv>YlN+e~du&>p&wkvYNip_eu2Mh0i4{U!=BrTzziRY;2Q#WUFFaq`t z^sd#YB_)bA7|U80eF@&2Na*ukJhylR>NsgIF zD#+!eoJh)QWo_}2_f2mIqgl0X?6}Iv83(?#c>9{YPDe=Wqj0*iF6#iL-tX@f~f_`oAnJTy=y?7vhFqR5jj1e zyB|iw3}of1WdZdC8#``De_mM$>Nf))q^H(A2CKc-O`J!MF1g-%P#B+Vspkx(WRfKr zci&p5uw`2)%jBo8R?ieZebV=P0#s}wxv$uy?*}Y+M6hqSg9J;jWExD+aheYq$q$vn>trCO3DF?Zie zDA=+slBN3-f_P)H08s7X3HOXCsdF0&!RHzf$wZgZE8@2MTKAUsweHIifs!HRqClc(>t5JWpHTz2QN5x6D4BZ$i3F&1Z+C1%#Qg#&7=pz8LjAo~ASU{5%3FOu zBw)h__fHk#2tL=6a-U2M^}`d)&?6~MN7ABst4EgGxusKah(8W2A(OW2PxL=mJt29) z=Ywh3JtjDKT)4=6Ap1+@2ruhPFQ%a~w`|uRANFvP{B+vQ+tHC-@^8VI;Gipl>zdbHs9<%Pu@w|D>z^wqU@UOodwQ)NOz6dG zIPj`6c4Xq>{PUEOc;PE3B;k*+=e;|A*4X+bt1~$)v=xVt7;^rC&VLnY6R>;4w8>}Z zC+%a*7Uv!REZFTG6Ea-(dn>FAe$}321}-5DZRmLMx1JpYMlw9_jU^r6sLH zYl|B87lbCe(|l>YzfYb&xs;cbM0k`9|j~54Nem9kTT4BG(jV6oO7H5h)J*pBTT3d>F2AzNPdwsV*Y&X?V zO31KuI?CYCRM~Ui?m3u!YW*ak-Ofa!LnGzKR)fckDj0BTsVSC|8D%UB8{E?tYE)fJ9#;KyVqp8*!s}>f)9YetV`*t%{I`wV#){v1 zYyY-^(97TB%de&*THtr13>omd_DJ%(g?&%>GH~YIxlO5H_0G$UC)i6GXEo`(Nf>9J z{#;r*)@iS$RyC(<3}twxWE3{FbTp(jw`eEUzl5JzboV%nhij$E-j)6K3NQREd3JK% z>F&AYW|39F=EZC0JhxIap23ly|Lj`0@$v|KH~;F6!E1v(z3&;%w>vTu%9B)|pT1wX z@Z_tClO`j-mmA#q(^fPl#=^|I-5Wz(mWUr?s%y|3iVr4h+&;r#-jJ7~ZVct+Emi$d zTbRf`BGVXe%B7<75rGaPW!A&z^ZOG9+LScHG-7q;O)Zr%EkEO{1R~9+kwPqWmDnY{ z!$K@<17gfY+$8q=iJjP_L3&3nZ08;BXT!wpzuCbR=D6+aNND^%9~d}xkbA!H`-l>y zbTM!|*8PM3j7QxVe*=9&P9G;7hu_Dpz)mE!P5*HYa3F1P%#WdWauoye`p%?b0zU0x zy#hXp=r88bo=`OOp@n&W_?*#ZI;BHpKYU8zbO9KHmoO_^k97 zt}$>xJ<-YCZ7ZCSiEUL4Mn~NL=eg zPbDb~$W}eCwlfjfOAz!K>R?ZGO~1pQK8ZE$W#=Q?IFV@8+U0T`4v^}YCWoHLK{u(7O5QQ2 zOnH>ZVbW_0U>PL)n4#nnYfB7?Xr%w%n;DUt3Liu_>yMBj zY=9gYG;V!Kf9sc1O1_aKS_^s9O|YhJ&nP+!{$VRxs^}z?)1ibG6 zCmKO=#vl;|tC04i?DblbLW8CzOrS%D(yUD`4P0eKOND1kCMyOPf~Gci?XOO)za^+7 zH&(w@wLsO8TAzkJkJW8XGO8YPov%loaq4N#A)o%^NI#@lSxi~mm{RTPuNHy<-CeNE zo3aMoHsN8HpT8aIp%oWoaio~5TllqG{c%2U%KTI-R+oSHdVBXUdvS{Z_gw6x&arjL z9GraH5x^Tj*?a7R4o!f!Mbh=@RP5s%L`Y}JF+-a*S@ja0Y6nR@hTax2^i`7!;?A3W zL$3cs*-vsx-pdJ{IyJl7?-R*h-x!sFW)ofzL!7kK=pVcxFB9~9jT~etXFs8nVt)*eJ>|yLA(vm z{g8PH^!xkuG^0KS-lE~I%@iw9_PMm!_#^X9$+&{*-?q*!l?3KLZuiwLYW!tpUm5j# zH3=N@9G12xm&Ri)o*HGbS2Gv;71arepdL6f-7L~c(ulC$bJtG7dQ2xh%EDngOSMKo zNPRCn(=qGIX=T)S;0GIm@P~fSXlB4p9mV!t%~;9 zce{SNt`sNL^nFLr&GJz@VPq6n0l!ZCG|nI92pDkjP5Pg>j&70xzlOHnZy(tT{Th6_ zGkGewHslP) zrm1M=@Wv&pgtT{$l&KQ)%evTzdcV#@Jy3lB1LSrT~)j z40t*e+%k_Wf^GZB869}O9B+a6@neVlA#LDN@!RqjB$oLmDjFi72yi3a z^HLw$Ob6|imh&2IMwGG9T$-65=E2y+Rp5bPR*uWK9%YUjW3Hz4=RH)KgM_=zHiKU% z5tPHs1VGWos(Gm@l&cQW5D-0V%o+XjQt{_n?M@zXi~3BmeXDvrWc`qr;dzt~y+#*r za+GD-6>X+xgh8F5z&lo|3MZ>@kM2LdIu$rtaf%eavL!pBxH(zrZRNwfv~`bim0tCE zzD-Lm)l7Y;kfv>oK=LK*Nwh|Y z=e34=nxIVEVY!prPn<83yaN52=Bf+;w~Xv-O@Xi)I4@N0U&g&%L4$99jesM(bB0KX zc)t6nVsx|4QzYIScI5+uUk3)Bdr=Qiuc7$TLhzg)iMsvVld&#ZKA_FRtmHF&1z96v z^}$xsf(WS7q_;gP(4i$a9Yg_pqGzhBz+eV4h!~^qUYj4uHbhAMPKub3Rv02sx8h8=wpOBQmLL0)&ul7qwn3kLcM}AY(6J!jT^o@5Gae=;pAfF!3bK=mIrCNDJxe|`|sW~ zGDdhmLxQtttnnpSBkKU*(;!)F)RDQUn3r-2p5XP%YM zi`N36L9}ZtWc#CsQb=D}OM(BFdR3$>#}u_tGYrYu6vBCYFATwI)fiI8Yyf@k3M|M& zCYKeVIj~K8kA#z}{}byyPEQ9PI@u3&b*b~IFNVnxB5|cAW1FQ6T{#QIZ94*8Hduk| z*wd=Qt>9n8y9@4asbr*bCfDp?XADIeu3TusH#>Ku3Hz9(kyyFYz1#gao1+_Aj&>e5 zn%pfZ@a4@_+rx>`r~BlB&gHt9n3dqg)Zt2qQ97Jji!}W^Y;J>LAz8ajHgY{ohqE}&(29T?DI>Be$<7QQ0$MWBLc((O|CFQT;)yuIbn z`f;|%_tNur5VAgOd1vlm$1(E8+6l6^Xz5w&%Koc>4OV`&YX7|tKFCRRR?)dK@KcRj zHT7;;6to^@fNQ<@lRMU_mY%qg$P>?(3x7`w&$MGspdE>x9M_rSWg^;(!Qb|m#dLjy zNo3qkH-`D@L|!*NSc09}(=p zbMe5KtNO_klDsP3$fI zVk@~LKEfVVCL&>1@@$&3aeHbjJ7@K>zX+cE8-&EkKUw#ZWD{FD`L^*y6FxHp0sL&Cmj0nbj2RFMVt>hTO;wb zCwAT2jKcs#VlUm*7eS#j2ayojdzLkGH6S{O0rt&ffBNw8Khw;X|EJL9QFWmCFqzc{ zV<>}x?1J)OK4gH@JhE-b%Li2fb6&{2;Au%iahMG3A3JDNN^A?{nnx2z)Rb9nN9ISu zo*K+KBoO~z9wru9jYQOO{V1;Mn|->@X+sW8mc7c;K?}AKU*Q-vJ@mYc0S1cx-z_94 zUxp~4i)jR@p_Fo^w+}0_L!_ImOA?_17{k(RgZ?wm&B*nCH1}6A|b{3f5yBjh#+0;=98!$Rc9Q!Khp9 zzzqIbLq#{&@7>HfWps4s_=*vTrPNh-yYB_rqy%3XyIpUG5x>8=d3XfNwBlj*UL3oE zdza>S5Ry`{k7O-heilQR(n!+{Cpn9Vi#}|>L!zj% z@a|Mzc8J0gS@k)?i*o+jOq?oA7*=S{61s=I+@pzzLFST1xmRXSHkv%`o6%obDJKbP z=&FYevY-Dv&EJu1ngA_=%)jZYy{PjMH+g)7%0JRKiK zXQAt|A3>5~D+t6skjUA&l9s(>{h98aUo0`@j`L-5A>9;h(1SMJl#Z)NIVjcIT{~ql zJPDoFK6fSj@GjCKA0B9JVDqw0OddoXw1$M^Toy`D1QaBm7cKeaw68|h`0N# z8#}Ok;MvNicDNOQAmmBMJb)(@;V<_s0)ldD-&kT0gDOQgoW;_51#=}v6ow-OA_zh)ulK)Z2cou0&roUb)AUeCa0~qD$M70}h%sr~%t#*J zOM_75Cw7gwthl7xnA@m6do!#$%eBECQ$FV)f9QKwtG;-XqN9?iy@bF+kKUp?gLt}d z4#Y`E(40vT#UJ(f{X0STrJF<`WHPU|Kj1^9|K1>Xwd=t@J;$y8oJ!-(a(|nxLk`CXS3%X?)DnpV>}#n?JSzt~%pI8uZKSkl{NlRyxv$4n3jc@}qi zDAb?O<8F3kdhg!?#}QMDVW;~7r~*`DvC^#QXpP7P;`#gOBUwH}gX|4)_nk+i185P< zkL>=1`ckK;0DzF=3(V68u+2eqH-Kg$SXRmQc`Kyw5Ui45|Mf{e#nB+};ST>rAnt}Q z0cb@N>fGxV!2&2?I?VPzP3n}65l=MkmA*2*;1#F`aE(Th==EEOyTW*M*CU5BGq~>> zA07^^GJyRo-4x9J;P!MQL&XQ&`Rt>TH%xv{l-p;C+ zv^z^owZX425O6Y<7m;wYv*U9I6jm_e)f_=Xvx6fQw6x^?^Ta)~k_L5?HqvLi4XJ#q zvi!aXJI2OpyJ#>Rvtv?J27*y!#C}Oj0f8|Tik)hfX|U+CKq)s%9-ePz5tNkfMGU<( zRtN3Yu1zl@0--_K-Jfi!H3c9d7l#-Tl5@+QyPB=}nV{I9?78pG)D>j?BF+r2dfzbJ zJqHOF($t=#-P|;uZ`fWO*@nY!7A;MxoQ`+x9Bp~hc3U~-GK#&`gwIz@&LdmgZEQX4 zIhuuZkKJ6Wh=EdkhZeIJ)^~n+p`G2zl6p;UC(G@80)ew6HgdmbvpGk+qFJ#<>JI)F z&@|{%Fh4f}SGh~s%&ZU|gu`8G`p&RBf$UUx&Sj$KbW;z zJI_Q`V>g?$XRUYZ*-#U1uj&S##NVSWjkHcS+^t&83A-u@j0zrh4eD!fBaOuWiJOp! zrxud!Y;3}F-i03Y_AWHpaW4&#ps6L%MpjX1&NL3|q#61?w%=U0^saN!7ArbBwsl0@ z^ugUK9#4_|c!$ERmc3-5T>io#UWwcx>&FPJQ~fUt>ixWOQY&^LR34nYnK^HdP(D z`t86rmd%TjQ!dAEJKobD-UT?H3trsf+FuJ^k&V**+BfvhzD4R`c{`u>jFUSDIjHLC zn^@!+cE1>W90JOYz3;tea6ca4$ry`|^=Nn2ui=0;+EMW{&}D;OcI6q^nwgNT{F3D% zH}k`GJnEl~dgwm;#pwDTJn!NOTLqi9`z;}w@XT$;@Mm|NK<8Vp_WgHG*TU`QLMos0B{)o_UW_vu(Rwo!;&!Ua>~PJw%jaz~&CM9!ehPUog@broXBIK(TlRv8hh z8!dtPv`~zzWR$%wg9iGJ<{)e*qqT!ZX~XF;c^e!N|q*cG;BlDBw-6(Sg7`d}@+#OJ<$@8C%!&{JNsVGIHm z)4za?_k&8#D=HxN5B3Njod=;$0C$62?GvMU%i>42R* z7#siKHxOnq-aO$BWzduv+9DXz@kQ8(CMS~j0V2;jf8rjhWdC4C_gRAo7yHoehxkou ziFEfKvu+si6a59+C1?PAwt6Q50BxxlchBSpxqHm25axj2)*nOr5W=l!MRf3p|AP8E zHaQLAiXt#51Bm`FtMWJvo`tro^5!3uUE+V=9-TPElHk3Lq}I*$c!Vn%Xb} z@$?M98GQ=sd5^vb85U`Z9zllz|&S z4|rse^xle9>H;8ZaM5=@U5-E=zI1Px%YQBdL=dc1ANd|Rw7<|~c~IW}iyY8le|rIA z)y_W}0$+U*I2u>@ba{e-_WbvO_Kg2Nrv08+(gNg?5#Ej({Eagv4}p<7dWcLqvhDmD zF)XwDKN`+~aiLN*TyQ31PZXymlW#jGCyO*hP^to^<-h&S22_q9HM)9m z9~WUx9RkG0*dahy{Bfp5jLPi(Pxzk$W95}%0{Srzd{>Bl)6IT-HgG$*VWC(q69$k0 z*|2}efcrQ4Zw$mkGY_P}|0;Jsf~9-2Ot_-byOEe4BUF+A@f0w>!O$)ivtZFrL_&!E zGalmpRnh}l!FNwq@ZFOYWB^(5@KS%-J!A)g^G6z{|No%uv^#Z<%ygb( z=V8gTNCMR~eP6`yy@>r-;vGzm|I6$uM4-Ba zh%Macb+Yc}x1Hs;d3t!|whFKkpIrZUR)P-e|352n(@YodSlcspHKm>`xnFDZM6Ymd z(m=5}0e|1``V{rJDQt(We<5XPUv=Mzf6~aR zpoK?=i9qBS%de3f2URx3tyKv`ejHf9;s40C|zjA)&i-jqF7&jN5t(I(@8Bs zEZOTcWIpWavtv0je3h(u6YFsi2F$JFY&v3Ip&TliBdo>{6 zqp5Xndo|jUG*wjsED53e&5rnO!B>D2o2#o<%?o$rMY1~2>EYnY=!qqD0(eO5PMOME ziFo+!%oFw#3+jFP_KExsybsoTI?%h3% zI47-TK=Yo^{OeR183-8*8o>FD`@1N?HKgflfc+iy?n3@X7}b0Lm!K=T+}>q6mjMv6 z>Js1XV~dqt#CQ{G=P?H*NtW$=wtL_o-UvmFuUA|GAjiC&TWO(HaE_KsP~xD`agQTK z?Qiq@FPw#h_!z(Zu|T4u2*6I*8Y2+8GoZ`RR~-ZN)0FHN+GP7>8HO6?oGSe(Ro%D= z%^iCF>9etA0)O&P> zn%69fMNPr+`TS@75_lPacVax_z`5YCifHpQO9KePZQ29L}$p5|7rcp!F*Pn@eX^c3hC zB8kjtS8d2*p1On`;P6NB3UpyvU}1lMGz*g--52K!At;af6}}sc02t(h(>j)IklP9} z0;m_sw*>`u1_mzQZ#s7kUc@KV>5z4AQCNcmq!yNu?W12GS|l%jNYUcq`}ke)NbDA5+ph_4-Jgi3EV4bBLldqbZCyjv zNBz0?=GWP8LYt0MWK~@2RGc+A=4ghMV{Z1c?xMQNqd-dL7?yWtQU+Amd6t|@Y&ANffW~vNRw&U?lyYsINRP&Nm zlPfCG#mm?^3oP@XR`*FN*?QG)+BV^nW`0)uprMj#O{N*w4nEFchAqd+P%U3c~NV~ zpb4KlJDHYwQ?Z}KktUPZut49_Kgn#)JtV29MhwtY*R7sTG_`CGbR}&~A!V4`=8V#^ z5f?6lvjLU;&A2Sn%Lw(S93+`ajo577GzSnxHajFPfG6#CU`kN4Dt2(zc-KXjp~4p7 zl?QOwez+S;IFmF z0e@}jvV+lDJFpV`7GS+()!N-Ug$w$GhWr1bnb!C8iQ?IUOh_%~mP%B_-X}zWV=qsd zWc*FUnC2tLzlm3505Bir*~9}>F)=|-O_EZyXx}&hpyHK)jJ)}x*oUv@JtBspVm~LpRW2j}Z}Z1+;OSqktgNq_ag zo~3R-{M4edKS}ueliGoj+Z*}y)+9Ej>&hE=hDoR;`~bpCF3nVs{QPW}q%(nuH&o(O z_ikkSQZH-k@__%}9MgxY|0h>+;+U|uH?-kYbY79R74zw|d($8qo?tY*V-(o=ey6$O z`|1fQHdFou3pf3**bps)P0oedu8DNI<9Z*kQ|gfOF^X#u5Gq;{XF^iq z)Q2L{tU?U~HPI69U$GSvl;eCEn#@kL@B5{m$85s~9AxlvZS^o5DTydr62_^B6W!Y_ z*n5$BKx)#S@VOHCIivBLkz5NPoS681KtSMMQq8wpn?dQ5Tb?Yx8XVE6K~@n+)!}lj zuRh~)o$7tP1xY241a8!5ywf79xIDI;Py2PE@jP+yuzn8ag7U+M%Kat^6i2F3skMxp zd3-E#Mh?P~_gMm1!d=|^Of9(&kg2U_b({L~*G7Z9<1YN!AqZ1@Q?^7S_Z+q^DK22m z&A0$e<4>&Uy#vCYfAarUZs*x!UnVWh1V#aVFjkx7UaEZICk}ha^|)J!17<({cA0Fyp4*oef&W?x_HT;RfyT*6p-cw7l9pUr@FU_nQp7QE z+6woa7XMt^7qjTc-l}s7CgPgZFq*bXaiTu|3S|r_b%5WbU6|5LMJ6on91wa;Qj+@>`#a_O%h)!)hk=Cb2u zutIw#JPI%$UF87tkufh6tdC`P1}V42yQVcos+i+_ph-3h0AUs)4W8ggwPf$&o}MEq z5_f2W3=khTU|=wOYy639NWuBhMGB-hla)PV(?W@L*mCKMJ^mF{@4!suyw_w7#wCMt z`*lRm@}i!%uLT!xC)C+Yqyr*BvFQ}OY=N!0Cm}4wn2GqZ0UXLORlmAW?ESgwSXn#) z3Cv7pwH#6^g)Cwcf3FG6)kmY1RRlrpfF?E&SVQwDH*2Q0s#dUQ4&ZV-dC#(c;UN4U DUMXIJ diff --git a/logs/web_project.log.2025-11-05.0.gz b/logs/web_project.log.2025-11-05.0.gz deleted file mode 100644 index ee55a892059a9a659eae65f62112c771b3bb9a58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 121723 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�ig@l0rap*&aj>e8o3Hf?d&SIXCk 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

{dEJ1;75#hni>uRJEg4@Wh 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 RUFP3XLeiQLPYa&X{U0LUr?mh8 diff --git a/logs/web_project.log.2025-11-06.0.gz b/logs/web_project.log.2025-11-06.0.gz deleted file mode 100644 index 62b3448670c3abf2d13eb23e60163b9e8f47baca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 110420 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

2Pg0s-!DyZ}tj~CBn!f6O2ok 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�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 diff --git a/logs/web_project.log.2025-11-09.0.gz b/logs/web_project.log.2025-11-09.0.gz new file mode 100644 index 0000000000000000000000000000000000000000..0d126f6c0dbe5e9c7551699c776b33103a0ec550 GIT binary patch literal 28700 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 literal 0 HcmV?d00001 diff --git a/logs/web_project.log.2025-11-10.0.gz b/logs/web_project.log.2025-11-10.0.gz new file mode 100644 index 0000000000000000000000000000000000000000..687e352d0e724206dac468e9b2ea0eb837de4c0a GIT binary patch literal 36240 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

@hHTgwAxek}i8)Ug3IT~RWA;5X8y7-Y` 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 D_s=rD literal 0 HcmV?d00001 diff --git a/logs/web_project.log.2025-11-12.0.gz b/logs/web_project.log.2025-11-12.0.gz new file mode 100644 index 0000000000000000000000000000000000000000..c44366b0aef6967dd89b1620cb60d26c2bd19688 GIT binary patch literal 38295 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 Qw3`I~4?tFRn7FA70IeT!%K!iX literal 0 HcmV?d00001 diff --git a/logs/web_project.log.2025-11-13.0.gz b/logs/web_project.log.2025-11-13.0.gz new file mode 100644 index 0000000000000000000000000000000000000000..506329c94043762f6406f03335b690e8c40d1998 GIT binary patch literal 39275 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 XbJ0F{j#zP`+cKdnz2G)gg%9> getArticlesByStatusWithPagination(@PathVariable PageDto pageDto) { + return articleService.getArticlesByStatusWithPagination(pageDto.getStatus(), pageDto.getPage(), pageDto.getSize()); + } + /** * 获取所有文章列表 * @return 返回包含文章列表的ResponseMessage对象 @@ -60,6 +74,7 @@ public class ArticleController { public ResponseMessage> getAllArticles() { return articleService.getAllArticles(); } + /** * 根据标题查询文章列表 * @param title 文章标题 diff --git a/src/main/java/com/qf/myafterprojecy/pojo/dto/PageDto.java b/src/main/java/com/qf/myafterprojecy/pojo/dto/PageDto.java new file mode 100644 index 0000000..ba43052 --- /dev/null +++ b/src/main/java/com/qf/myafterprojecy/pojo/dto/PageDto.java @@ -0,0 +1,42 @@ +package com.qf.myafterprojecy.pojo.dto; + +import javax.ws.rs.DefaultValue; + +public class PageDto { + + private Integer status; + @DefaultValue("0") + private Integer page; + @DefaultValue("10") + private Integer size; + // 数据验证 + public void validate() { + if ( status > 0 && status <= 2) { + throw new IllegalArgumentException("Status must be 0 or 2"); + } + if (page < 0) { + throw new IllegalArgumentException("Page number must be non-negative"); + } + if (size <= 0 || size > 100) { + throw new IllegalArgumentException("Page size must be between 1 and 100"); + } + } + public Integer getStatus() { + return status; + } + public void setStatus(Integer status) { + this.status = status; + } + public Integer getPage() { + return page; + } + public void setPage(Integer page) { + this.page = page; + } + public Integer getSize() { + return size; + } + public void setSize(Integer size) { + this.size = size; + } +} diff --git a/src/main/java/com/qf/myafterprojecy/repository/ArticleRepository.java b/src/main/java/com/qf/myafterprojecy/repository/ArticleRepository.java index 883ae25..882a31f 100644 --- a/src/main/java/com/qf/myafterprojecy/repository/ArticleRepository.java +++ b/src/main/java/com/qf/myafterprojecy/repository/ArticleRepository.java @@ -1,6 +1,8 @@ package com.qf.myafterprojecy.repository; import com.qf.myafterprojecy.pojo.Article; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; @@ -87,4 +89,13 @@ public interface ArticleRepository extends JpaRepository { */ @Query("SELECT a FROM Article a WHERE a.status = :status") List

findByStatus(@Param("status") Integer status); + + /** + * 根据状态分页查询文章列表 + * @param status 文章状态,0-草稿,1-已发布,2-已删除 + * @param pageable 分页参数,包含页码、每页大小和排序信息 + * @return 返回符合状态条件的文章分页结果 + */ + @Query("SELECT a FROM Article a WHERE a.status = :status ORDER BY a.createdAt DESC") + Page
findByStatusWithPagination(@Param("status") Integer status, Pageable pageable); } diff --git a/src/main/java/com/qf/myafterprojecy/service/ArticleService.java b/src/main/java/com/qf/myafterprojecy/service/ArticleService.java index 5f6c701..ca803e9 100644 --- a/src/main/java/com/qf/myafterprojecy/service/ArticleService.java +++ b/src/main/java/com/qf/myafterprojecy/service/ArticleService.java @@ -12,6 +12,8 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.dao.DataAccessException; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -98,6 +100,32 @@ public class ArticleService implements IArticleService { return ResponseMessage.error("获取已发布文章列表失败"); } } + + @Override + @Transactional(readOnly = true) + public ResponseMessage> getArticlesByStatusWithPagination(Integer status, Integer page, Integer size) { + try { + if (status == null) { + return ResponseMessage.badRequest("文章状态不能为空"); + } + if (status < 0 || status > 2) { + return ResponseMessage.badRequest("文章状态值必须在0到2之间"); + } + if (page == null || page < 0) { + page = 0; // 默认第一页 + } + if (size == null || size <= 0 || size > 100) { + size = 10; // 默认每页10条,最大100条 + } + + PageRequest pageRequest = PageRequest.of(page, size); + Page
articlePage = articleRepository.findByStatusWithPagination(status, pageRequest); + return ResponseMessage.success(articlePage, "根据状态分页查询文章成功"); + } catch (Exception e) { + log.error("根据状态分页查询文章列表失败: {}", e.getMessage()); + return ResponseMessage.error("根据状态分页查询文章列表失败"); + } + } @Override @Transactional(readOnly = true) public ResponseMessage> getArticlesByTitle(String title) { diff --git a/src/main/java/com/qf/myafterprojecy/service/imp/IArticleService.java b/src/main/java/com/qf/myafterprojecy/service/imp/IArticleService.java index aedc3cd..ee15987 100644 --- a/src/main/java/com/qf/myafterprojecy/service/imp/IArticleService.java +++ b/src/main/java/com/qf/myafterprojecy/service/imp/IArticleService.java @@ -3,6 +3,7 @@ package com.qf.myafterprojecy.service.imp; import com.qf.myafterprojecy.config.ResponseMessage; import com.qf.myafterprojecy.pojo.Article; import com.qf.myafterprojecy.pojo.dto.ArticleDto; +import org.springframework.data.domain.Page; import java.util.List; @@ -89,4 +90,13 @@ public interface IArticleService { * @return 返回包含已发布文章列表的ResponseMessage对象 */ ResponseMessage> getPublishedArticles(); + + /** + * 根据状态分页查询文章列表 + * @param status 文章状态(0:未发表 1:已发表 2:已删除) + * @param page 页码,从0开始 + * @param size 每页大小 + * @return 返回包含分页文章列表的ResponseMessage对象 + */ + ResponseMessage> getArticlesByStatusWithPagination(Integer status, Integer page, Integer size); }