2025-12-22 09:18:34.910 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 09:18:34.954 [restartedMain] INFO com.mtkj.mtpay.MtPayApplication - Starting MtPayApplication using Java 17.0.12 with PID 19392 (E:\MTKJPAY\mt-pay\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 09:18:34.955 [restartedMain] INFO com.mtkj.mtpay.MtPayApplication - No active profile set, falling back to 1 default profile: "default" 2025-12-22 09:18:35.783 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String 2025-12-22 09:18:35.818 [restartedMain] ERROR org.springframework.boot.SpringApplication - Application run failed java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getTypeForFactoryBeanFromAttributes(FactoryBeanRegistrySupport.java:86) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:838) at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:620) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:532) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtpay.MtPayApplication.main(MtPayApplication.java:24) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) 2025-12-22 09:18:35.820 [restartedMain] ERROR com.mtkj.mtpay.MtPayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getTypeForFactoryBeanFromAttributes(FactoryBeanRegistrySupport.java:86) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:838) at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:620) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:532) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtpay.MtPayApplication.main(MtPayApplication.java:24) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) 2025-12-22 09:18:35.825 [main] ERROR com.mtkj.mtpay.MtPayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtpay.MtPayApplication.main(MtPayApplication.java:24) 2025-12-22 09:37:25.516 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 09:37:25.551 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 11548 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 09:37:25.551 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - No active profile set, falling back to 1 default profile: "default" 2025-12-22 09:37:26.254 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String 2025-12-22 09:37:26.280 [restartedMain] ERROR org.springframework.boot.SpringApplication - Application run failed java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getTypeForFactoryBeanFromAttributes(FactoryBeanRegistrySupport.java:86) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:838) at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:620) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:532) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:28) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) 2025-12-22 09:37:26.282 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getTypeForFactoryBeanFromAttributes(FactoryBeanRegistrySupport.java:86) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:838) at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:620) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:532) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:28) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) 2025-12-22 09:37:26.284 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:28) 2025-12-22 09:38:48.803 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 09:38:48.849 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 4864 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 09:38:48.850 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - No active profile set, falling back to 1 default profile: "default" 2025-12-22 09:38:49.585 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String 2025-12-22 09:38:49.613 [restartedMain] ERROR org.springframework.boot.SpringApplication - Application run failed java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getTypeForFactoryBeanFromAttributes(FactoryBeanRegistrySupport.java:86) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:838) at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:620) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:532) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:28) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) 2025-12-22 09:38:49.616 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getTypeForFactoryBeanFromAttributes(FactoryBeanRegistrySupport.java:86) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:838) at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:620) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:532) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:28) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) 2025-12-22 09:38:49.618 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:28) 2025-12-22 09:39:47.804 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 09:39:47.836 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 16444 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 09:39:47.838 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - No active profile set, falling back to 1 default profile: "default" 2025-12-22 09:39:48.443 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String 2025-12-22 09:39:48.465 [restartedMain] ERROR org.springframework.boot.SpringApplication - Application run failed java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getTypeForFactoryBeanFromAttributes(FactoryBeanRegistrySupport.java:86) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:838) at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:620) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:532) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) 2025-12-22 09:39:48.468 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getTypeForFactoryBeanFromAttributes(FactoryBeanRegistrySupport.java:86) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:838) at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:620) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:532) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) 2025-12-22 09:39:48.470 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) 2025-12-22 09:39:56.894 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 09:39:56.933 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 23464 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 09:39:56.934 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - No active profile set, falling back to 1 default profile: "default" 2025-12-22 09:39:57.608 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String 2025-12-22 09:39:57.633 [restartedMain] ERROR org.springframework.boot.SpringApplication - Application run failed java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getTypeForFactoryBeanFromAttributes(FactoryBeanRegistrySupport.java:86) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:838) at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:620) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:532) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) 2025-12-22 09:39:57.635 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ java.lang.IllegalArgumentException: Invalid value type for attribute 'factoryBeanObjectType': java.lang.String at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getTypeForFactoryBeanFromAttributes(FactoryBeanRegistrySupport.java:86) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:838) at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:620) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:532) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) 2025-12-22 09:39:57.637 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) 2025-12-22 09:44:00.601 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 09:44:00.642 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 21512 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 09:44:00.642 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - No active profile set, falling back to 1 default profile: "default" 2025-12-22 09:44:01.829 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 09:44:01.830 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 09:44:01.830 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 09:44:01.873 [restartedMain] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 09:44:01.937 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 09:44:01.940 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 09:44:01.943 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 09:44:01.963 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: null 2025-12-22 09:44:02.281 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Insert - [com.mtkj.mtpay.mapper.PaymentOrderMapper.insert] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Insert] 2025-12-22 09:44:02.283 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Delete - [com.mtkj.mtpay.mapper.PaymentOrderMapper.delete] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Delete] 2025-12-22 09:44:02.285 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Update - [com.mtkj.mtpay.mapper.PaymentOrderMapper.update] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Update] 2025-12-22 09:44:02.286 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectCount - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectCount] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectCount] 2025-12-22 09:44:02.288 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectMaps - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectMaps] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectMaps] 2025-12-22 09:44:02.289 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectObjs - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectObjs] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectObjs] 2025-12-22 09:44:02.314 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Insert - [com.mtkj.mtpay.mapper.PaymentOrderMapper.insert] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Insert] 2025-12-22 09:44:02.315 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Delete - [com.mtkj.mtpay.mapper.PaymentOrderMapper.delete] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Delete] 2025-12-22 09:44:02.316 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Update - [com.mtkj.mtpay.mapper.PaymentOrderMapper.update] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Update] 2025-12-22 09:44:02.317 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectCount - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectCount] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectCount] 2025-12-22 09:44:02.319 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectMaps - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectMaps] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectMaps] 2025-12-22 09:44:02.320 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectObjs - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectObjs] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectObjs] 2025-12-22 09:44:02.408 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 09:44:02.547 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 09:44:02.567 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Insert - [com.mtkj.mtpay.mapper.PaymentOrderMapper.insert] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Insert] 2025-12-22 09:44:02.568 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Delete - [com.mtkj.mtpay.mapper.PaymentOrderMapper.delete] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Delete] 2025-12-22 09:44:02.569 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Update - [com.mtkj.mtpay.mapper.PaymentOrderMapper.update] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Update] 2025-12-22 09:44:02.570 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectCount - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectCount] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectCount] 2025-12-22 09:44:02.571 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectMaps - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectMaps] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectMaps] 2025-12-22 09:44:02.571 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectObjs - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectObjs] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectObjs] 2025-12-22 09:44:02.585 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Insert - [com.mtkj.mtpay.mapper.PaymentOrderMapper.insert] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Insert] 2025-12-22 09:44:02.587 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Delete - [com.mtkj.mtpay.mapper.PaymentOrderMapper.delete] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Delete] 2025-12-22 09:44:02.588 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Update - [com.mtkj.mtpay.mapper.PaymentOrderMapper.update] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Update] 2025-12-22 09:44:02.589 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectCount - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectCount] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectCount] 2025-12-22 09:44:02.590 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectMaps - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectMaps] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectMaps] 2025-12-22 09:44:02.591 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectObjs - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectObjs] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectObjs] 2025-12-22 09:44:02.660 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 配置跨域访问,路径: /api/**, 允许所有来源 2025-12-22 09:44:02.663 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 跨域配置完成 2025-12-22 09:44:02.929 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8082"] 2025-12-22 09:44:02.946 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Started MtkjpayApplication in 2.867 seconds (process running for 3.619) 2025-12-22 09:44:02.949 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ✅ MTKJ PAY 支付系统启动成功! ✅ ║ ║ ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用信息 ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用名称: {:<45} ║ ║ 运行环境: {:<45} ║ ║ 服务端口: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 访问地址 ║ ╠══════════════════════════════════════════════════════════╣ ║ 后端服务: {:<45} ║ ║ API接口: {:<45} ║ ║ Druid监控: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 状态: 🟢 服务运行中,可以接收请求 ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 09:44:02.949 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - 📌 提示: - 前端代理地址: http://localhost:3000 - 后端API地址: http://localhost:8082//api - 图片上传接口: http://localhost:8082//api/product/upload/image - 商品管理接口: http://localhost:8082//api/product 2025-12-22 09:44:02.951 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) 2025-12-22 09:46:29.186 [http-nio-8082-exec-2] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' 2025-12-22 09:46:29.701 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/b5bba11f-8de8-4572-93fe-569182e746ff.jpeg 2025-12-22 09:46:29.701 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/2d995b91-ffba-4c29-8e43-24ed949b1d03.jpeg 2025-12-22 09:46:29.704 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/60fb7f4d-4c95-432d-9cd6-199dd0f6a57e.jpeg 2025-12-22 09:46:29.704 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/761771dc-1456-4d4c-a8bb-2b9389f34f47.jpeg 2025-12-22 09:46:29.705 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 图3.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/60fb7f4d-4c95-432d-9cd6-199dd0f6a57e.jpeg 2025-12-22 09:46:29.705 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 白色.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/761771dc-1456-4d4c-a8bb-2b9389f34f47.jpeg 2025-12-22 09:46:29.705 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 主图1.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b5bba11f-8de8-4572-93fe-569182e746ff.jpeg 2025-12-22 09:46:29.705 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 粉红色.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2d995b91-ffba-4c29-8e43-24ed949b1d03.jpeg 2025-12-22 09:46:29.709 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/0c39a430-afae-4238-8ee4-5c095e552466.jpeg 2025-12-22 09:46:29.710 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 图2.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/0c39a430-afae-4238-8ee4-5c095e552466.jpeg 2025-12-22 09:46:29.729 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/d124a3fb-6247-4d17-8308-9b5debbe1c2a.jpeg 2025-12-22 09:46:29.729 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 蓝色.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/d124a3fb-6247-4d17-8308-9b5debbe1c2a.jpeg 2025-12-22 09:48:01.436 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.controller.ProductController - 创建商品请求:CreateProductRequestDTO(name=名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, price=12.36, mainImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2d995b91-ffba-4c29-8e43-24ed949b1d03.jpeg, mainImages=[https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2d995b91-ffba-4c29-8e43-24ed949b1d03.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b5bba11f-8de8-4572-93fe-569182e746ff.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/761771dc-1456-4d4c-a8bb-2b9389f34f47.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/0c39a430-afae-4238-8ee4-5c095e552466.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/60fb7f4d-4c95-432d-9cd6-199dd0f6a57e.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/d124a3fb-6247-4d17-8308-9b5debbe1c2a.jpeg], status=ACTIVE, shopId=1000001, skus=[CreateProductRequestDTO.CreateProductSkuDTO(sku=mj001, price=9.9, currency=USD, stock=9999, salesAttrs=要选就选『上市品牌』的优选面料☀️上市公司严选质量才真好, skuImage=null, weight=50, size=111111, specification=null, status=ACTIVE)]) 2025-12-22 09:48:01.459 [http-nio-8082-exec-7] ERROR com.alibaba.druid.pool.DruidDataSource - {dataSource-1} init error java.sql.SQLException: url not set at com.alibaba.druid.pool.DruidDataSource.resolveDriver(DruidDataSource.java:1273) at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:898) at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1462) at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1458) at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:83) at org.springframework.jdbc.datasource.DataSourceTransactionManager.doBegin(DataSourceTransactionManager.java:269) at org.springframework.transaction.support.AbstractPlatformTransactionManager.startTransaction(AbstractPlatformTransactionManager.java:531) at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:405) at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:610) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:379) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:717) at com.mtkj.mtpay.service.impl.ProductServiceImpl$$SpringCGLIB$$0.createProduct() at com.mtkj.mtpay.controller.ProductController.createProduct(ProductController.java:38) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:254) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:182) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:917) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:829) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:842) 2025-12-22 09:48:01.461 [http-nio-8082-exec-7] ERROR com.mtkj.mtpay.exception.GlobalExceptionHandler - 运行时异常 org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction at org.springframework.jdbc.datasource.DataSourceTransactionManager.doBegin(DataSourceTransactionManager.java:313) at org.springframework.transaction.support.AbstractPlatformTransactionManager.startTransaction(AbstractPlatformTransactionManager.java:531) at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:405) at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:610) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:379) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:717) at com.mtkj.mtpay.service.impl.ProductServiceImpl$$SpringCGLIB$$0.createProduct() at com.mtkj.mtpay.controller.ProductController.createProduct(ProductController.java:38) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:254) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:182) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:917) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:829) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:842) Caused by: java.sql.SQLException: url not set at com.alibaba.druid.pool.DruidDataSource.resolveDriver(DruidDataSource.java:1273) at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:898) at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1462) at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1458) at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:83) at org.springframework.jdbc.datasource.DataSourceTransactionManager.doBegin(DataSourceTransactionManager.java:269) ... 60 common frames omitted 2025-12-22 09:48:01.465 [http-nio-8082-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction] 2025-12-22 10:03:10.183 [Thread-8] INFO org.apache.coyote.http11.Http11NioProtocol - Stopping ProtocolHandler ["http-nio-8082"] 2025-12-22 10:03:10.262 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ MTKJ PAY 支付系统正在启动... ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 10:03:10.311 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 21512 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 10:03:10.312 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - No active profile set, falling back to 1 default profile: "default" 2025-12-22 10:03:10.561 [restartedMain] WARN org.mybatis.spring.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.mtkj.mtkjpay]' package. Please check your configuration. 2025-12-22 10:03:10.627 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 10:03:10.627 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 10:03:10.627 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 10:03:10.653 [restartedMain] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 10:03:10.763 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Generic.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'dataSource' threw exception with message: Failed to determine suitable jdbc url 2025-12-22 10:03:10.765 [restartedMain] INFO org.apache.catalina.core.StandardService - Stopping service [Tomcat] 2025-12-22 10:03:10.807 [restartedMain] ERROR o.s.b.diagnostics.LoggingFailureAnalysisReporter - *************************** APPLICATION FAILED TO START *************************** Description: Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine suitable jdbc url Action: Consider the following: If you want an embedded database (H2, HSQL or Derby), please put it on the classpath. If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active). 2025-12-22 10:03:10.808 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Generic.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'dataSource' threw exception with message: Failed to determine suitable jdbc url at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:655) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:643) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1336) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1166) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:946) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:616) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.sql.DataSource]: Factory method 'dataSource' threw exception with message: Failed to determine suitable jdbc url at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:178) at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:651) ... 22 common frames omitted Caused by: org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Failed to determine suitable jdbc url at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineUrl(DataSourceProperties.java:232) at org.springframework.boot.autoconfigure.jdbc.PropertiesJdbcConnectionDetails.getJdbcUrl(PropertiesJdbcConnectionDetails.java:44) at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:56) at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Generic.dataSource(DataSourceConfiguration.java:193) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:140) ... 23 common frames omitted 2025-12-22 10:03:13.685 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ MTKJ PAY 支付系统正在启动... ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 10:03:13.717 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 21512 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 10:03:13.717 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - No active profile set, falling back to 1 default profile: "default" 2025-12-22 10:03:14.023 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 10:03:14.023 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 10:03:14.023 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 10:03:14.044 [restartedMain] INFO o.a.c.c.ContainerBase.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 10:03:14.063 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 10:03:14.063 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 10:03:14.066 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 10:03:14.066 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: null, Username: null 2025-12-22 10:03:14.066 [restartedMain] ERROR com.mtkj.mtpay.config.DruidDataSourceConfig - 数据源URL未配置!请检查 application-dev.yml 中的 spring.datasource.druid.master.url 配置 2025-12-22 10:03:14.067 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'callbackController' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\controller\CallbackController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'callbackServiceImpl' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\service\impl\CallbackServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'paymentOrderMapper' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\mapper\PaymentOrderMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory': Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 2025-12-22 10:03:14.068 [restartedMain] INFO org.apache.catalina.core.StandardService - Stopping service [Tomcat] 2025-12-22 10:03:14.078 [restartedMain] ERROR org.springframework.boot.SpringApplication - Application run failed org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'callbackController' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\controller\CallbackController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'callbackServiceImpl' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\service\impl\CallbackServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'paymentOrderMapper' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\mapper\PaymentOrderMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory': Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:802) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:241) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1356) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1193) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:946) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:616) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'callbackServiceImpl' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\service\impl\CallbackServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'paymentOrderMapper' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\mapper\PaymentOrderMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory': Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:802) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:241) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1356) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1193) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1441) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:911) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:789) ... 22 common frames omitted Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'paymentOrderMapper' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\mapper\PaymentOrderMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory': Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1517) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1411) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:600) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1441) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:911) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:789) ... 36 common frames omitted Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:802) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:546) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1336) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1166) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1441) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1502) ... 48 common frames omitted Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:655) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:489) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1336) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1166) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1441) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:911) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:789) ... 61 common frames omitted Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:178) at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:651) ... 75 common frames omitted Caused by: java.lang.IllegalStateException: 数据源URL未配置 at com.mtkj.mtpay.config.DruidDataSourceConfig.masterDataSource(DruidDataSourceConfig.java:38) at com.mtkj.mtpay.config.DruidDataSourceConfig$$SpringCGLIB$$0.CGLIB$masterDataSource$0() at com.mtkj.mtpay.config.DruidDataSourceConfig$$SpringCGLIB$$FastClass$$1.invoke() at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:258) at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331) at com.mtkj.mtpay.config.DruidDataSourceConfig$$SpringCGLIB$$0.masterDataSource() at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:140) ... 76 common frames omitted 2025-12-22 10:03:14.079 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'callbackController' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\controller\CallbackController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'callbackServiceImpl' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\service\impl\CallbackServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'paymentOrderMapper' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\mapper\PaymentOrderMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory': Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:802) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:241) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1356) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1193) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:946) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:616) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'callbackServiceImpl' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\service\impl\CallbackServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'paymentOrderMapper' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\mapper\PaymentOrderMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory': Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:802) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:241) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1356) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1193) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1441) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:911) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:789) ... 22 common frames omitted Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'paymentOrderMapper' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\mapper\PaymentOrderMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory': Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1517) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1411) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:600) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1441) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:911) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:789) ... 36 common frames omitted Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Unsatisfied dependency expressed through method 'sqlSessionFactory' parameter 0: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:802) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:546) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1336) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1166) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1441) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1502) ... 48 common frames omitted Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'masterDataSource' defined in class path resource [com/mtkj/mtpay/config/DruidDataSourceConfig.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:655) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:489) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1336) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1166) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1441) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:911) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:789) ... 61 common frames omitted Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.sql.DataSource]: Factory method 'masterDataSource' threw exception with message: 数据源URL未配置 at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:178) at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:651) ... 75 common frames omitted Caused by: java.lang.IllegalStateException: 数据源URL未配置 at com.mtkj.mtpay.config.DruidDataSourceConfig.masterDataSource(DruidDataSourceConfig.java:38) at com.mtkj.mtpay.config.DruidDataSourceConfig$$SpringCGLIB$$0.CGLIB$masterDataSource$0() at com.mtkj.mtpay.config.DruidDataSourceConfig$$SpringCGLIB$$FastClass$$1.invoke() at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:258) at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331) at com.mtkj.mtpay.config.DruidDataSourceConfig$$SpringCGLIB$$0.masterDataSource() at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:140) ... 76 common frames omitted 2025-12-22 10:03:31.841 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 10:03:31.883 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 24824 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 10:03:31.883 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 10:03:32.939 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 10:03:32.940 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 10:03:32.941 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 10:03:32.986 [restartedMain] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 10:03:33.052 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 10:03:33.056 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 10:03:33.059 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 10:03:33.059 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 10:03:33.077 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 10:03:33.380 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Insert - [com.mtkj.mtpay.mapper.PaymentOrderMapper.insert] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Insert] 2025-12-22 10:03:33.382 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Delete - [com.mtkj.mtpay.mapper.PaymentOrderMapper.delete] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Delete] 2025-12-22 10:03:33.385 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Update - [com.mtkj.mtpay.mapper.PaymentOrderMapper.update] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Update] 2025-12-22 10:03:33.386 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectCount - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectCount] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectCount] 2025-12-22 10:03:33.388 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectMaps - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectMaps] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectMaps] 2025-12-22 10:03:33.393 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectObjs - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectObjs] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectObjs] 2025-12-22 10:03:33.428 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Insert - [com.mtkj.mtpay.mapper.PaymentOrderMapper.insert] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Insert] 2025-12-22 10:03:33.429 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Delete - [com.mtkj.mtpay.mapper.PaymentOrderMapper.delete] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Delete] 2025-12-22 10:03:33.430 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Update - [com.mtkj.mtpay.mapper.PaymentOrderMapper.update] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Update] 2025-12-22 10:03:33.432 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectCount - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectCount] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectCount] 2025-12-22 10:03:33.433 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectMaps - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectMaps] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectMaps] 2025-12-22 10:03:33.434 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectObjs - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectObjs] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectObjs] 2025-12-22 10:03:33.489 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 10:03:33.633 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 10:03:33.652 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Insert - [com.mtkj.mtpay.mapper.PaymentOrderMapper.insert] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Insert] 2025-12-22 10:03:33.653 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Delete - [com.mtkj.mtpay.mapper.PaymentOrderMapper.delete] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Delete] 2025-12-22 10:03:33.654 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Update - [com.mtkj.mtpay.mapper.PaymentOrderMapper.update] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Update] 2025-12-22 10:03:33.654 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectCount - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectCount] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectCount] 2025-12-22 10:03:33.656 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectMaps - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectMaps] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectMaps] 2025-12-22 10:03:33.657 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectObjs - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectObjs] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectObjs] 2025-12-22 10:03:33.673 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Insert - [com.mtkj.mtpay.mapper.PaymentOrderMapper.insert] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Insert] 2025-12-22 10:03:33.675 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Delete - [com.mtkj.mtpay.mapper.PaymentOrderMapper.delete] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Delete] 2025-12-22 10:03:33.675 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.Update - [com.mtkj.mtpay.mapper.PaymentOrderMapper.update] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Update] 2025-12-22 10:03:33.677 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectCount - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectCount] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectCount] 2025-12-22 10:03:33.678 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectMaps - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectMaps] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectMaps] 2025-12-22 10:03:33.679 [restartedMain] WARN c.b.mybatisplus.core.injector.methods.SelectObjs - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectObjs] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectObjs] 2025-12-22 10:03:33.750 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 配置跨域访问,路径: /api/**, 允许所有来源 2025-12-22 10:03:33.752 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 跨域配置完成 2025-12-22 10:03:34.033 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8082"] 2025-12-22 10:03:34.051 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Started MtkjpayApplication in 2.706 seconds (process running for 3.434) 2025-12-22 10:03:34.054 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ✅ MTKJ PAY 支付系统启动成功! ✅ ║ ║ ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用信息 ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用名称: {:<45} ║ ║ 运行环境: {:<45} ║ ║ 服务端口: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 访问地址 ║ ╠══════════════════════════════════════════════════════════╣ ║ 后端服务: {:<45} ║ ║ API接口: {:<45} ║ ║ Druid监控: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 状态: 🟢 服务运行中,可以接收请求 ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 10:03:34.054 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - 📌 提示: - 前端代理地址: http://localhost:3000 - 后端API地址: http://localhost:8082//api - 图片上传接口: http://localhost:8082//api/product/upload/image - 商品管理接口: http://localhost:8082//api/product 2025-12-22 10:03:34.056 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) 2025-12-22 10:03:49.041 [http-nio-8082-exec-3] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' 2025-12-22 10:03:50.068 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/84a31e3f-a913-4aa0-92aa-f15d5880f1db.jpeg 2025-12-22 10:03:50.068 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/b00aa8c0-6e74-48cc-a6a4-38d1984e594f.jpeg 2025-12-22 10:03:50.068 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/b2cf68c7-967b-4c6f-9f8f-b7fd9a69d230.jpeg 2025-12-22 10:03:50.068 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/c9e6bdb6-6b54-4599-b440-3ef50038d20a.jpeg 2025-12-22 10:03:50.068 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/af5b70f0-f3ac-4c6b-825b-96e93a3f0610.jpeg 2025-12-22 10:03:50.070 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 图2.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/c9e6bdb6-6b54-4599-b440-3ef50038d20a.jpeg 2025-12-22 10:03:50.070 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 主图1.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/84a31e3f-a913-4aa0-92aa-f15d5880f1db.jpeg 2025-12-22 10:03:50.070 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 白色.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b2cf68c7-967b-4c6f-9f8f-b7fd9a69d230.jpeg 2025-12-22 10:03:50.070 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 粉红色.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/af5b70f0-f3ac-4c6b-825b-96e93a3f0610.jpeg 2025-12-22 10:03:50.070 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 图3.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00aa8c0-6e74-48cc-a6a4-38d1984e594f.jpeg 2025-12-22 10:03:50.198 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/4f5a7c75-5156-4efa-83d8-fbd45e6ef6af.jpeg 2025-12-22 10:03:50.199 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 蓝色.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/4f5a7c75-5156-4efa-83d8-fbd45e6ef6af.jpeg 2025-12-22 10:04:52.135 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.controller.ProductController - 创建商品请求:CreateProductRequestDTO(name=名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, price=20, mainImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00aa8c0-6e74-48cc-a6a4-38d1984e594f.jpeg, mainImages=[https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00aa8c0-6e74-48cc-a6a4-38d1984e594f.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b2cf68c7-967b-4c6f-9f8f-b7fd9a69d230.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/c9e6bdb6-6b54-4599-b440-3ef50038d20a.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/af5b70f0-f3ac-4c6b-825b-96e93a3f0610.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/84a31e3f-a913-4aa0-92aa-f15d5880f1db.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/4f5a7c75-5156-4efa-83d8-fbd45e6ef6af.jpeg], status=ACTIVE, shopId=10001, skus=[CreateProductRequestDTO.CreateProductSkuDTO(sku= 要选就选『上市品牌』的优选面料☀️上市公司严选质量才真好, price=9.9, currency=USD, stock=0, salesAttrs=要选就选『上市品牌』的优选面料☀️上市公司严选质量才真好, skuImage=null, weight=60, size=8952, specification=null, status=ACTIVE)]) 2025-12-22 10:04:54.799 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 开始创建商品,商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, 店铺ID: 10001, SKU数量: 1 2025-12-22 10:04:54.802 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品主图(多图): ["https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00aa8c0-6e74-48cc-a6a4-38d1984e594f.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b2cf68c7-967b-4c6f-9f8f-b7fd9a69d230.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/c9e6bdb6-6b54-4599-b440-3ef50038d20a.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/af5b70f0-f3ac-4c6b-825b-96e93a3f0610.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/84a31e3f-a913-4aa0-92aa-f15d5880f1db.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/4f5a7c75-5156-4efa-83d8-fbd45e6ef6af.jpeg"] 2025-12-22 10:04:54.805 [http-nio-8082-exec-6] WARN c.b.mybatisplus.core.injector.methods.Insert - [com.mtkj.mtpay.mapper.PaymentOrderMapper.insert] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Insert] 2025-12-22 10:04:54.806 [http-nio-8082-exec-6] WARN c.b.mybatisplus.core.injector.methods.Delete - [com.mtkj.mtpay.mapper.PaymentOrderMapper.delete] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Delete] 2025-12-22 10:04:54.808 [http-nio-8082-exec-6] WARN c.b.mybatisplus.core.injector.methods.Update - [com.mtkj.mtpay.mapper.PaymentOrderMapper.update] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.Update] 2025-12-22 10:04:54.809 [http-nio-8082-exec-6] WARN c.b.mybatisplus.core.injector.methods.SelectCount - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectCount] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectCount] 2025-12-22 10:04:54.810 [http-nio-8082-exec-6] WARN c.b.mybatisplus.core.injector.methods.SelectMaps - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectMaps] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectMaps] 2025-12-22 10:04:54.811 [http-nio-8082-exec-6] WARN c.b.mybatisplus.core.injector.methods.SelectObjs - [com.mtkj.mtpay.mapper.PaymentOrderMapper.selectObjs] Has been loaded by XML or SqlProvider or Mybatis's Annotation, so ignoring this injection for [class com.baomidou.mybatisplus.core.injector.methods.SelectObjs] 2025-12-22 10:04:54.857 [http-nio-8082-exec-6] ERROR com.mtkj.mtpay.exception.GlobalExceptionHandler - 运行时异常 java.lang.IllegalArgumentException: Result Maps collection does not contain value for com.mtkj.mtpay.mapper.PaymentOrderMapper.BaseResultMap at com.baomidou.mybatisplus.core.MybatisConfiguration$StrictMap.get(MybatisConfiguration.java:482) at com.baomidou.mybatisplus.core.MybatisConfiguration.getResultMap(MybatisConfiguration.java:297) at org.apache.ibatis.builder.MapperBuilderAssistant.getStatementResultMaps(MapperBuilderAssistant.java:321) at org.apache.ibatis.builder.MapperBuilderAssistant.addMappedStatement(MapperBuilderAssistant.java:214) at org.apache.ibatis.builder.MapperBuilderAssistant.addMappedStatement(MapperBuilderAssistant.java:276) at com.baomidou.mybatisplus.core.injector.AbstractMethod.addMappedStatement(AbstractMethod.java:412) at com.baomidou.mybatisplus.core.injector.AbstractMethod.addSelectMappedStatementForTable(AbstractMethod.java:307) at com.baomidou.mybatisplus.core.injector.methods.SelectList.injectMappedStatement(SelectList.java:50) at com.baomidou.mybatisplus.core.injector.AbstractMethod.inject(AbstractMethod.java:87) at com.baomidou.mybatisplus.core.injector.AbstractSqlInjector.lambda$inspectInject$0(AbstractSqlInjector.java:58) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) at com.baomidou.mybatisplus.core.injector.AbstractSqlInjector.inspectInject(AbstractSqlInjector.java:58) at com.baomidou.mybatisplus.core.MybatisMapperAnnotationBuilder.parserInjector(MybatisMapperAnnotationBuilder.java:126) at com.baomidou.mybatisplus.core.InjectorResolver.resolve(InjectorResolver.java:37) at org.apache.ibatis.session.Configuration.lambda$parsePendingMethods$1(Configuration.java:980) at java.base/java.util.Collection.removeIf(Collection.java:576) at org.apache.ibatis.session.Configuration.parsePendingMethods(Configuration.java:979) at org.apache.ibatis.session.Configuration.buildAllStatements(Configuration.java:970) at com.baomidou.mybatisplus.core.MybatisConfiguration.hasStatement(MybatisConfiguration.java:363) at org.apache.ibatis.session.Configuration.hasStatement(Configuration.java:948) at org.apache.ibatis.binding.MapperMethod$SqlCommand.resolveMappedStatement(MapperMethod.java:253) at org.apache.ibatis.binding.MapperMethod$SqlCommand.(MapperMethod.java:225) at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.(MybatisMapperMethod.java:50) at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.lambda$cachedInvoker$0(MybatisMapperProxy.java:99) at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708) at org.apache.ibatis.util.MapUtil.computeIfAbsent(MapUtil.java:36) at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.cachedInvoker(MybatisMapperProxy.java:97) at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) at jdk.proxy3/jdk.proxy3.$Proxy82.insert(Unknown Source) at com.mtkj.mtpay.service.impl.ProductServiceImpl.createProduct(ProductServiceImpl.java:90) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:352) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765) at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:385) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:717) at com.mtkj.mtpay.service.impl.ProductServiceImpl$$SpringCGLIB$$0.createProduct() at com.mtkj.mtpay.controller.ProductController.createProduct(ProductController.java:38) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:254) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:182) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:917) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:829) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:842) 2025-12-22 10:04:54.862 [http-nio-8082-exec-6] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [java.lang.IllegalArgumentException: Result Maps collection does not contain value for com.mtkj.mtpay.mapper.PaymentOrderMapper.BaseResultMap] 2025-12-22 10:07:35.625 [Thread-8] INFO org.apache.coyote.http11.Http11NioProtocol - Stopping ProtocolHandler ["http-nio-8082"] 2025-12-22 10:07:35.794 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ MTKJ PAY 支付系统正在启动... ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 10:07:35.966 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 24824 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 10:07:35.967 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 10:07:36.518 [restartedMain] WARN org.mybatis.spring.mapper.ClassPathMapperScanner - No MyBatis mapper was found in '[com.mtkj.mtkjpay]' package. Please check your configuration. 2025-12-22 10:07:36.701 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 10:07:36.702 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 10:07:36.702 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 10:07:36.755 [restartedMain] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 10:07:36.901 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Generic.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'dataSource' threw exception with message: Failed to determine suitable jdbc url 2025-12-22 10:07:36.902 [restartedMain] INFO org.apache.catalina.core.StandardService - Stopping service [Tomcat] 2025-12-22 10:07:36.947 [restartedMain] ERROR o.s.b.diagnostics.LoggingFailureAnalysisReporter - *************************** APPLICATION FAILED TO START *************************** Description: Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine suitable jdbc url Action: Consider the following: If you want an embedded database (H2, HSQL or Derby), please put it on the classpath. If you have database settings to be loaded from a particular profile you may need to activate it (the profiles dev are currently active). 2025-12-22 10:07:36.950 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Generic.class]: Failed to instantiate [javax.sql.DataSource]: Factory method 'dataSource' threw exception with message: Failed to determine suitable jdbc url at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:655) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:643) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1336) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1166) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:946) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:616) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.sql.DataSource]: Factory method 'dataSource' threw exception with message: Failed to determine suitable jdbc url at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:178) at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:651) ... 22 common frames omitted Caused by: org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Failed to determine suitable jdbc url at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineUrl(DataSourceProperties.java:232) at org.springframework.boot.autoconfigure.jdbc.PropertiesJdbcConnectionDetails.getJdbcUrl(PropertiesJdbcConnectionDetails.java:44) at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:56) at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Generic.dataSource(DataSourceConfiguration.java:193) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:140) ... 23 common frames omitted 2025-12-22 10:07:39.228 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ MTKJ PAY 支付系统正在启动... ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 10:07:39.266 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 24824 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 10:07:39.266 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 10:07:39.571 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 10:07:39.571 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 10:07:39.571 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 10:07:39.588 [restartedMain] INFO o.a.c.c.ContainerBase.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 10:07:39.604 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 10:07:39.604 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 10:07:39.606 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 10:07:39.606 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 10:07:39.606 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 10:07:39.813 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 10:07:39.816 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 10:07:39.874 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 配置跨域访问,路径: /api/**, 允许所有来源 2025-12-22 10:07:39.874 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 跨域配置完成 2025-12-22 10:07:39.942 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8082"] 2025-12-22 10:07:39.949 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Started MtkjpayApplication in 0.715 seconds (process running for 249.333) 2025-12-22 10:07:39.953 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ✅ MTKJ PAY 支付系统启动成功! ✅ ║ ║ ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用信息 ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用名称: {:<45} ║ ║ 运行环境: {:<45} ║ ║ 服务端口: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 访问地址 ║ ╠══════════════════════════════════════════════════════════╣ ║ 后端服务: {:<45} ║ ║ API接口: {:<45} ║ ║ Druid监控: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 状态: 🟢 服务运行中,可以接收请求 ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 10:07:39.953 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - 📌 提示: - 前端代理地址: http://localhost:3000 - 后端API地址: http://localhost:8082//api - 图片上传接口: http://localhost:8082//api/product/upload/image - 商品管理接口: http://localhost:8082//api/product 2025-12-22 10:07:54.306 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 10:07:54.344 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 25772 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 10:07:54.344 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 10:07:55.915 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 10:07:55.916 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 10:07:55.917 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 10:07:55.977 [restartedMain] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 10:07:56.063 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 10:07:56.066 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 10:07:56.071 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 10:07:56.072 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 10:07:56.095 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 10:07:56.520 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 10:07:56.668 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 10:07:56.787 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 配置跨域访问,路径: /api/**, 允许所有来源 2025-12-22 10:07:56.790 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 跨域配置完成 2025-12-22 10:07:57.292 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8082"] 2025-12-22 10:07:57.314 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Started MtkjpayApplication in 3.509 seconds (process running for 4.261) 2025-12-22 10:07:57.317 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ✅ MTKJ PAY 支付系统启动成功! ✅ ║ ║ ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用信息 ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用名称: {:<45} ║ ║ 运行环境: {:<45} ║ ║ 服务端口: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 访问地址 ║ ╠══════════════════════════════════════════════════════════╣ ║ 后端服务: {:<45} ║ ║ API接口: {:<45} ║ ║ Druid监控: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 状态: 🟢 服务运行中,可以接收请求 ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 10:07:57.317 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - 📌 提示: - 前端代理地址: http://localhost:3000 - 后端API地址: http://localhost:8082//api - 图片上传接口: http://localhost:8082//api/product/upload/image - 商品管理接口: http://localhost:8082//api/product 2025-12-22 10:07:57.320 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) 2025-12-22 10:08:01.510 [http-nio-8082-exec-1] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' 2025-12-22 10:08:01.849 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.controller.ProductController - 创建商品请求:CreateProductRequestDTO(name=名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, price=20, mainImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00aa8c0-6e74-48cc-a6a4-38d1984e594f.jpeg, mainImages=[https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00aa8c0-6e74-48cc-a6a4-38d1984e594f.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b2cf68c7-967b-4c6f-9f8f-b7fd9a69d230.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/c9e6bdb6-6b54-4599-b440-3ef50038d20a.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/af5b70f0-f3ac-4c6b-825b-96e93a3f0610.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/84a31e3f-a913-4aa0-92aa-f15d5880f1db.jpeg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/4f5a7c75-5156-4efa-83d8-fbd45e6ef6af.jpeg], status=ACTIVE, shopId=10001, skus=[CreateProductRequestDTO.CreateProductSkuDTO(sku= 要选就选『上市品牌』的优选面料☀️上市公司严选质量才真好, price=9.9, currency=USD, stock=0, salesAttrs=要选就选『上市品牌』的优选面料☀️上市公司严选质量才真好, skuImage=null, weight=60, size=8952, specification=null, status=ACTIVE)]) 2025-12-22 10:08:04.105 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 开始创建商品,商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, 店铺ID: 10001, SKU数量: 1 2025-12-22 10:08:04.111 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品主图(多图): ["https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00aa8c0-6e74-48cc-a6a4-38d1984e594f.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b2cf68c7-967b-4c6f-9f8f-b7fd9a69d230.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/c9e6bdb6-6b54-4599-b440-3ef50038d20a.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/af5b70f0-f3ac-4c6b-825b-96e93a3f0610.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/84a31e3f-a913-4aa0-92aa-f15d5880f1db.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/4f5a7c75-5156-4efa-83d8-fbd45e6ef6af.jpeg"] 2025-12-22 10:08:04.171 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 10:08:04.179 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - ==> Preparing: INSERT INTO mt_product ( name, price, main_image, status, shop_id, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 10:08:04.197 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - ==> Parameters: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人(String), 20(BigDecimal), ["https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00aa8c0-6e74-48cc-a6a4-38d1984e594f.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b2cf68c7-967b-4c6f-9f8f-b7fd9a69d230.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/c9e6bdb6-6b54-4599-b440-3ef50038d20a.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/af5b70f0-f3ac-4c6b-825b-96e93a3f0610.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/84a31e3f-a913-4aa0-92aa-f15d5880f1db.jpeg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/4f5a7c75-5156-4efa-83d8-fbd45e6ef6af.jpeg"](String), ACTIVE(String), 10001(Long), 2025-12-22T10:08:04.171337300(LocalDateTime), 2025-12-22T10:08:04.172510500(LocalDateTime) 2025-12-22 10:08:04.281 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - <== Updates: 1 2025-12-22 10:08:04.285 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品基础信息插入成功,商品ID: 1 2025-12-22 10:08:04.286 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 开始创建SKU,数量: 1 2025-12-22 10:08:04.287 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 10:08:04.287 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sales_attrs, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 10:08:04.288 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 要选就选『上市品牌』的优选面料☀️上市公司严选质量才真好(String), 9.9(BigDecimal), USD(String), 0(Integer), 要选就选『上市品牌』的优选面料☀️上市公司严选质量才真好(String), 60(BigDecimal), 8952(String), ACTIVE(String), 2025-12-22T10:08:04.287238100(LocalDateTime), 2025-12-22T10:08:04.287238100(LocalDateTime) 2025-12-22 10:08:04.369 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 10:08:04.369 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 要选就选『上市品牌』的优选面料☀️上市公司严选质量才真好, SKU ID: 1 2025-12-22 10:08:04.369 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品创建成功,商品ID: 1, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 1 2025-12-22 10:08:04.369 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品详情,商品ID: 1 2025-12-22 10:08:04.371 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 10:08:04.371 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 10:08:04.425 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 10:08:04.476 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ? AND status = ?) 2025-12-22 10:08:04.476 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String) 2025-12-22 10:08:04.518 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 1 2025-12-22 10:08:04.518 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品SKU数量: 1, 商品ID: 1 2025-12-22 10:08:04.522 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 解析商品主图(多图),数量: 6 2025-12-22 10:08:04.524 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品详情成功,商品ID: 1, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 1, 主图数量: 6 2025-12-22 11:14:01.023 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/b47cfabe-79e4-4cba-81f9-5e0d9b844b94.jpeg 2025-12-22 11:14:01.027 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: 图3.jpeg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b47cfabe-79e4-4cba-81f9-5e0d9b844b94.jpeg 2025-12-22 11:20:56.839 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/ca21566b-9477-4f64-9cb8-086db75d928c.jpg 2025-12-22 11:20:56.839 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-43.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ca21566b-9477-4f64-9cb8-086db75d928c.jpg 2025-12-22 11:20:56.841 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/b0c4187b-ce6a-4a87-ab8e-16ee9689bf23.jpg 2025-12-22 11:20:56.841 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-30.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b0c4187b-ce6a-4a87-ab8e-16ee9689bf23.jpg 2025-12-22 11:20:56.842 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/1f028c82-937f-4e8f-94b8-ae54259db959.jpg 2025-12-22 11:20:56.842 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-21.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/1f028c82-937f-4e8f-94b8-ae54259db959.jpg 2025-12-22 11:20:56.850 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/6f8e3c23-8b25-4d60-908b-5ec2b3f7998d.jpg 2025-12-22 11:20:56.851 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-18-56.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/6f8e3c23-8b25-4d60-908b-5ec2b3f7998d.jpg 2025-12-22 11:20:56.881 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/a513d619-bacb-4078-8d03-306006fec29e.jpg 2025-12-22 11:20:56.881 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-38.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a513d619-bacb-4078-8d03-306006fec29e.jpg 2025-12-22 11:21:43.314 [http-nio-8082-exec-8] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg 2025-12-22 11:21:43.314 [http-nio-8082-exec-8] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-58.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg 2025-12-22 11:21:57.965 [http-nio-8082-exec-9] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg 2025-12-22 11:21:57.967 [http-nio-8082-exec-9] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-20-05.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg 2025-12-22 11:22:32.864 [http-nio-8082-exec-10] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg 2025-12-22 11:22:32.864 [http-nio-8082-exec-10] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-20-11.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg 2025-12-22 11:22:54.683 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg 2025-12-22 11:22:54.684 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-20-17.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg 2025-12-22 11:23:05.175 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg 2025-12-22 11:23:05.175 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-20-24.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg 2025-12-22 11:25:26.592 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.controller.ProductController - 创建商品请求:CreateProductRequestDTO(name=名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, price=20.99, mainImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ca21566b-9477-4f64-9cb8-086db75d928c.jpg, mainImages=[https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ca21566b-9477-4f64-9cb8-086db75d928c.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b0c4187b-ce6a-4a87-ab8e-16ee9689bf23.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/1f028c82-937f-4e8f-94b8-ae54259db959.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/6f8e3c23-8b25-4d60-908b-5ec2b3f7998d.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a513d619-bacb-4078-8d03-306006fec29e.jpg], status=ACTIVE, shopId=100001, skus=[CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=13.32, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=191.72, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=102.38, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=85909.35, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=13.32, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=191.72, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=102.38, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=85909.35, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=13.32, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=191.72, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=102.38, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=85909.35, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, price=13.32, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, price=191.72, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, price=102.38, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, price=85909.35, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】, price=13.32, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】, price=191.72, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】, price=102.38, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】, price=85909.35, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg, weight=200, size={"length":23,"width":23,"height":23,"unit":"cm"}, specification=null, status=ACTIVE)]) 2025-12-22 11:25:26.987 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 开始创建商品,商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, 店铺ID: 100001, SKU数量: 25 2025-12-22 11:25:26.987 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品主图(多图): ["https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ca21566b-9477-4f64-9cb8-086db75d928c.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b0c4187b-ce6a-4a87-ab8e-16ee9689bf23.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/1f028c82-937f-4e8f-94b8-ae54259db959.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/6f8e3c23-8b25-4d60-908b-5ec2b3f7998d.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a513d619-bacb-4078-8d03-306006fec29e.jpg"] 2025-12-22 11:25:26.988 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:26.988 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - ==> Preparing: INSERT INTO mt_product ( name, price, main_image, status, shop_id, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:26.989 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - ==> Parameters: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人(String), 20.99(BigDecimal), ["https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ca21566b-9477-4f64-9cb8-086db75d928c.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b0c4187b-ce6a-4a87-ab8e-16ee9689bf23.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/1f028c82-937f-4e8f-94b8-ae54259db959.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/6f8e3c23-8b25-4d60-908b-5ec2b3f7998d.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a513d619-bacb-4078-8d03-306006fec29e.jpg"](String), ACTIVE(String), 100001(Long), 2025-12-22T11:25:26.988575900(LocalDateTime), 2025-12-22T11:25:26.988575900(LocalDateTime) 2025-12-22 11:25:27.076 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - <== Updates: 1 2025-12-22 11:25:27.076 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品基础信息插入成功,商品ID: 2 2025-12-22 11:25:27.076 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 开始创建SKU,数量: 25 2025-12-22 11:25:27.077 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:27.079 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:27.080 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 13.32(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:27.077979800(LocalDateTime), 2025-12-22T11:25:27.079033700(LocalDateTime) 2025-12-22 11:25:27.153 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:27.153 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 2 2025-12-22 11:25:27.155 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:27.155 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:27.155 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 191.72(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:27.155217600(LocalDateTime), 2025-12-22T11:25:27.155217600(LocalDateTime) 2025-12-22 11:25:27.258 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:27.258 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 3 2025-12-22 11:25:27.259 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:27.259 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:27.260 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 102.38(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:27.259587600(LocalDateTime), 2025-12-22T11:25:27.259587600(LocalDateTime) 2025-12-22 11:25:27.340 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:27.340 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 4 2025-12-22 11:25:27.341 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:27.341 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:27.342 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:27.341629800(LocalDateTime), 2025-12-22T11:25:27.341629800(LocalDateTime) 2025-12-22 11:25:27.416 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:27.416 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 5 2025-12-22 11:25:27.418 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:27.418 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:27.419 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 85909.35(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50e4f00e-369d-4f42-b756-06904c9194ca.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:27.418579800(LocalDateTime), 2025-12-22T11:25:27.418579800(LocalDateTime) 2025-12-22 11:25:27.494 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:27.494 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 6 2025-12-22 11:25:27.494 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:27.495 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:27.495 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 13.32(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:27.495450400(LocalDateTime), 2025-12-22T11:25:27.495450400(LocalDateTime) 2025-12-22 11:25:27.834 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:27.834 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 7 2025-12-22 11:25:27.835 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:27.835 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:27.836 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 191.72(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:27.835640900(LocalDateTime), 2025-12-22T11:25:27.835640900(LocalDateTime) 2025-12-22 11:25:27.936 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:27.937 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 8 2025-12-22 11:25:27.937 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:27.938 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:27.938 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 102.38(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:27.937505800(LocalDateTime), 2025-12-22T11:25:27.937505800(LocalDateTime) 2025-12-22 11:25:28.033 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:28.034 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 9 2025-12-22 11:25:28.035 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:28.035 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:28.036 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:28.035534(LocalDateTime), 2025-12-22T11:25:28.035534(LocalDateTime) 2025-12-22 11:25:28.130 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:28.130 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 10 2025-12-22 11:25:28.130 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:28.131 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:28.131 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 85909.35(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/fad5aced-b07e-40da-bba2-a335faaf342e.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:28.130417100(LocalDateTime), 2025-12-22T11:25:28.131425(LocalDateTime) 2025-12-22 11:25:28.275 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:28.276 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 11 2025-12-22 11:25:28.276 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:28.277 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:28.278 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 13.32(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:28.276417800(LocalDateTime), 2025-12-22T11:25:28.276417800(LocalDateTime) 2025-12-22 11:25:28.401 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:28.402 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 12 2025-12-22 11:25:28.402 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:28.402 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:28.403 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 191.72(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:28.402506900(LocalDateTime), 2025-12-22T11:25:28.402506900(LocalDateTime) 2025-12-22 11:25:28.496 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:28.496 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 13 2025-12-22 11:25:28.497 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:28.497 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:28.498 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 102.38(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:28.497580500(LocalDateTime), 2025-12-22T11:25:28.497580500(LocalDateTime) 2025-12-22 11:25:28.669 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:28.669 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 14 2025-12-22 11:25:28.670 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:28.670 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:28.671 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:28.670890900(LocalDateTime), 2025-12-22T11:25:28.670890900(LocalDateTime) 2025-12-22 11:25:28.747 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:28.748 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 15 2025-12-22 11:25:28.748 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:28.748 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:28.749 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 85909.35(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b575adf9-d5de-4898-b8e0-63cb130ae9b4.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:28.748650(LocalDateTime), 2025-12-22T11:25:28.748650(LocalDateTime) 2025-12-22 11:25:28.830 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:28.830 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 16 2025-12-22 11:25:28.830 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:28.830 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:28.831 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】(String), 13.32(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:28.830894800(LocalDateTime), 2025-12-22T11:25:28.830894800(LocalDateTime) 2025-12-22 11:25:28.905 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:28.905 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, SKU ID: 17 2025-12-22 11:25:28.905 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:28.905 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:28.906 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】(String), 191.72(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:28.905241300(LocalDateTime), 2025-12-22T11:25:28.905241300(LocalDateTime) 2025-12-22 11:25:28.977 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:28.977 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, SKU ID: 18 2025-12-22 11:25:28.978 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:28.978 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:28.978 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】(String), 102.38(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:28.978923(LocalDateTime), 2025-12-22T11:25:28.978923(LocalDateTime) 2025-12-22 11:25:29.055 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:29.055 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, SKU ID: 19 2025-12-22 11:25:29.056 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:29.056 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:29.057 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:29.056486400(LocalDateTime), 2025-12-22T11:25:29.056486400(LocalDateTime) 2025-12-22 11:25:29.164 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:29.164 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, SKU ID: 20 2025-12-22 11:25:29.164 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:29.164 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:29.165 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】(String), 85909.35(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ed85cee7-767f-4789-a7b4-debc4d1f51e7.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:29.164366(LocalDateTime), 2025-12-22T11:25:29.164366(LocalDateTime) 2025-12-22 11:25:29.238 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:29.240 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, SKU ID: 21 2025-12-22 11:25:29.240 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:29.241 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:29.241 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】(String), 13.32(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:29.240446500(LocalDateTime), 2025-12-22T11:25:29.240446500(LocalDateTime) 2025-12-22 11:25:29.329 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:29.329 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】, SKU ID: 22 2025-12-22 11:25:29.329 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:29.329 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:29.330 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】(String), 191.72(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:29.329232300(LocalDateTime), 2025-12-22T11:25:29.329232300(LocalDateTime) 2025-12-22 11:25:29.457 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:29.457 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】, SKU ID: 23 2025-12-22 11:25:29.458 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:29.458 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:29.458 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】(String), 102.38(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:29.458297700(LocalDateTime), 2025-12-22T11:25:29.458297700(LocalDateTime) 2025-12-22 11:25:29.536 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:29.536 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】, SKU ID: 24 2025-12-22 11:25:29.536 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:29.537 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:29.537 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:29.536586700(LocalDateTime), 2025-12-22T11:25:29.536586700(LocalDateTime) 2025-12-22 11:25:29.612 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:29.612 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】, SKU ID: 25 2025-12-22 11:25:29.612 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:25:29.612 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:25:29.613 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 2(Long), 【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】(String), 85909.35(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e0890689-6772-4334-8230-ec1cf1fd0626.jpg(String), 200(BigDecimal), {"length":23,"width":23,"height":23,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:25:29.612877800(LocalDateTime), 2025-12-22T11:25:29.612877800(LocalDateTime) 2025-12-22 11:25:29.717 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:25:29.717 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 2, SKU编码: 【✅性价比首选】天空灰+天空灰+米白色【⭐️毛巾实惠3条装】, SKU ID: 26 2025-12-22 11:25:29.717 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品创建成功,商品ID: 2, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 25 2025-12-22 11:25:29.717 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品详情,商品ID: 2 2025-12-22 11:25:29.717 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 11:25:29.718 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 2(Long) 2025-12-22 11:25:29.764 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 11:25:29.764 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ? AND status = ?) 2025-12-22 11:25:29.765 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 2(Long), ACTIVE(String) 2025-12-22 11:25:29.832 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 25 2025-12-22 11:25:29.833 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品SKU数量: 25, 商品ID: 2 2025-12-22 11:25:29.834 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 解析商品主图(多图),数量: 5 2025-12-22 11:25:29.839 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品详情成功,商品ID: 2, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 25, 主图数量: 5 2025-12-22 11:30:30.323 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg 2025-12-22 11:30:30.323 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-58.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg 2025-12-22 11:31:11.714 [http-nio-8082-exec-9] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/e82397de-2df8-46de-867f-e8ada463f658.jpg 2025-12-22 11:31:11.714 [http-nio-8082-exec-9] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-43.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e82397de-2df8-46de-867f-e8ada463f658.jpg 2025-12-22 11:31:11.717 [http-nio-8082-exec-8] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/d612a6d1-974a-4f8f-b178-2282df46da9c.jpg 2025-12-22 11:31:11.717 [http-nio-8082-exec-8] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-30.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/d612a6d1-974a-4f8f-b178-2282df46da9c.jpg 2025-12-22 11:31:11.720 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/3b392540-7406-400e-96f4-c70fb36d2ff1.jpg 2025-12-22 11:31:11.721 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-21.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/3b392540-7406-400e-96f4-c70fb36d2ff1.jpg 2025-12-22 11:31:11.754 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/b00613a1-ddd1-4691-aed2-a3172f330741.jpg 2025-12-22 11:31:11.755 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-38.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00613a1-ddd1-4691-aed2-a3172f330741.jpg 2025-12-22 11:31:11.910 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/2d744c5f-db3a-4c9d-acf9-e94b228cb3a3.jpg 2025-12-22 11:31:11.911 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-18-56.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2d744c5f-db3a-4c9d-acf9-e94b228cb3a3.jpg 2025-12-22 11:31:56.619 [http-nio-8082-exec-10] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg 2025-12-22 11:31:56.620 [http-nio-8082-exec-10] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-20-05.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg 2025-12-22 11:32:11.561 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg 2025-12-22 11:32:11.561 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-20-11.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg 2025-12-22 11:32:28.537 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg 2025-12-22 11:32:28.538 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-20-17.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg 2025-12-22 11:33:15.019 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.controller.ProductController - 创建商品请求:CreateProductRequestDTO(name=名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, price=22.98, mainImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e82397de-2df8-46de-867f-e8ada463f658.jpg, mainImages=[https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e82397de-2df8-46de-867f-e8ada463f658.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/d612a6d1-974a-4f8f-b178-2282df46da9c.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/3b392540-7406-400e-96f4-c70fb36d2ff1.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00613a1-ddd1-4691-aed2-a3172f330741.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2d744c5f-db3a-4c9d-acf9-e94b228cb3a3.jpg], status=ACTIVE, shopId=100001, skus=[CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=13.32, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=191.72, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=102.38, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=85909.35, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=13.32, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=191.72, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=102.38, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=85909.35, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=13.32, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=191.72, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=102.38, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=85909.35, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, price=13.32, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, price=191.72, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, price=102.38, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, price=85909.35, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg, weight=200, size={"length":30,"width":30,"height":30,"unit":"cm"}, specification=null, status=ACTIVE)]) 2025-12-22 11:33:15.117 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 开始创建商品,商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, 店铺ID: 100001, SKU数量: 20 2025-12-22 11:33:15.117 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品主图(多图): ["https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e82397de-2df8-46de-867f-e8ada463f658.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/d612a6d1-974a-4f8f-b178-2282df46da9c.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/3b392540-7406-400e-96f4-c70fb36d2ff1.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00613a1-ddd1-4691-aed2-a3172f330741.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2d744c5f-db3a-4c9d-acf9-e94b228cb3a3.jpg"] 2025-12-22 11:33:15.117 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.118 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - ==> Preparing: INSERT INTO mt_product ( name, price, main_image, status, shop_id, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.118 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - ==> Parameters: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人(String), 22.98(BigDecimal), ["https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/e82397de-2df8-46de-867f-e8ada463f658.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/d612a6d1-974a-4f8f-b178-2282df46da9c.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/3b392540-7406-400e-96f4-c70fb36d2ff1.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/b00613a1-ddd1-4691-aed2-a3172f330741.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2d744c5f-db3a-4c9d-acf9-e94b228cb3a3.jpg"](String), ACTIVE(String), 100001(Long), 2025-12-22T11:33:15.117509400(LocalDateTime), 2025-12-22T11:33:15.117509400(LocalDateTime) 2025-12-22 11:33:15.194 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - <== Updates: 1 2025-12-22 11:33:15.194 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品基础信息插入成功,商品ID: 3 2025-12-22 11:33:15.194 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 开始创建SKU,数量: 20 2025-12-22 11:33:15.195 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.195 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.195 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 13.32(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.195590100(LocalDateTime), 2025-12-22T11:33:15.195590100(LocalDateTime) 2025-12-22 11:33:15.269 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:15.269 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 27 2025-12-22 11:33:15.270 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.270 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.270 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 191.72(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.270591400(LocalDateTime), 2025-12-22T11:33:15.270591400(LocalDateTime) 2025-12-22 11:33:15.344 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:15.344 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 28 2025-12-22 11:33:15.345 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.345 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.345 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 102.38(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.345358100(LocalDateTime), 2025-12-22T11:33:15.345358100(LocalDateTime) 2025-12-22 11:33:15.424 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:15.425 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 29 2025-12-22 11:33:15.425 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.425 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.426 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 85909.35(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.425665900(LocalDateTime), 2025-12-22T11:33:15.425665900(LocalDateTime) 2025-12-22 11:33:15.499 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:15.499 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 30 2025-12-22 11:33:15.499 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.500 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.500 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/52f023e3-df60-4053-bacd-ce8e87f8ef60.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.499431800(LocalDateTime), 2025-12-22T11:33:15.499431800(LocalDateTime) 2025-12-22 11:33:15.577 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:15.577 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 31 2025-12-22 11:33:15.577 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.577 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.578 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 13.32(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.577347100(LocalDateTime), 2025-12-22T11:33:15.577347100(LocalDateTime) 2025-12-22 11:33:15.666 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:15.666 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 32 2025-12-22 11:33:15.667 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.667 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.668 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 191.72(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.667236900(LocalDateTime), 2025-12-22T11:33:15.667236900(LocalDateTime) 2025-12-22 11:33:15.744 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:15.744 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 33 2025-12-22 11:33:15.745 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.745 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.745 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 102.38(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.745119800(LocalDateTime), 2025-12-22T11:33:15.745119800(LocalDateTime) 2025-12-22 11:33:15.827 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:15.827 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 34 2025-12-22 11:33:15.828 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.828 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.828 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 85909.35(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.828163100(LocalDateTime), 2025-12-22T11:33:15.828163100(LocalDateTime) 2025-12-22 11:33:15.901 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:15.901 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 35 2025-12-22 11:33:15.901 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.901 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.902 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/5cd2bf84-2b64-4ce1-97af-c62ba577ef02.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.901444500(LocalDateTime), 2025-12-22T11:33:15.901444500(LocalDateTime) 2025-12-22 11:33:15.987 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:15.987 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 36 2025-12-22 11:33:15.988 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:15.988 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:15.988 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 13.32(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:15.988802400(LocalDateTime), 2025-12-22T11:33:15.988802400(LocalDateTime) 2025-12-22 11:33:16.068 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:16.068 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 37 2025-12-22 11:33:16.068 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:16.068 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:16.069 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 191.72(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:16.068586300(LocalDateTime), 2025-12-22T11:33:16.068586300(LocalDateTime) 2025-12-22 11:33:16.143 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:16.143 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 38 2025-12-22 11:33:16.143 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:16.143 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:16.143 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 102.38(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:16.143536500(LocalDateTime), 2025-12-22T11:33:16.143536500(LocalDateTime) 2025-12-22 11:33:16.215 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:16.215 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 39 2025-12-22 11:33:16.215 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:16.216 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:16.216 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 85909.35(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:16.215696100(LocalDateTime), 2025-12-22T11:33:16.216718700(LocalDateTime) 2025-12-22 11:33:16.290 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:16.290 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 40 2025-12-22 11:33:16.290 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:16.291 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:16.291 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a98fdf7a-68d9-4167-88f0-e837418bb3ef.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:16.290223600(LocalDateTime), 2025-12-22T11:33:16.290223600(LocalDateTime) 2025-12-22 11:33:16.367 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:16.367 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 41 2025-12-22 11:33:16.367 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:16.367 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:16.368 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】(String), 13.32(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:16.367107200(LocalDateTime), 2025-12-22T11:33:16.367107200(LocalDateTime) 2025-12-22 11:33:16.445 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:16.445 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, SKU ID: 42 2025-12-22 11:33:16.446 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:16.446 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:16.446 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】(String), 191.72(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:16.446388300(LocalDateTime), 2025-12-22T11:33:16.446388300(LocalDateTime) 2025-12-22 11:33:16.521 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:16.522 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, SKU ID: 43 2025-12-22 11:33:16.522 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:16.522 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:16.522 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】(String), 102.38(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:16.522278300(LocalDateTime), 2025-12-22T11:33:16.522278300(LocalDateTime) 2025-12-22 11:33:16.605 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:16.605 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, SKU ID: 44 2025-12-22 11:33:16.605 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:16.605 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:16.606 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】(String), 85909.35(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:16.605348700(LocalDateTime), 2025-12-22T11:33:16.605348700(LocalDateTime) 2025-12-22 11:33:16.679 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:16.679 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, SKU ID: 45 2025-12-22 11:33:16.679 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 11:33:16.679 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 11:33:16.680 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 3(Long), 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/50b91724-3516-4002-88a4-452e576cc000.jpg(String), 200(BigDecimal), {"length":30,"width":30,"height":30,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T11:33:16.679697(LocalDateTime), 2025-12-22T11:33:16.679697(LocalDateTime) 2025-12-22 11:33:16.754 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 11:33:16.754 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 3, SKU编码: 【✅性价比首选】浅水蓝+浅水蓝+米白色【⭐️毛巾实惠3条装】, SKU ID: 46 2025-12-22 11:33:16.754 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品创建成功,商品ID: 3, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 20 2025-12-22 11:33:16.754 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品详情,商品ID: 3 2025-12-22 11:33:16.754 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 11:33:16.754 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 3(Long) 2025-12-22 11:33:16.793 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 11:33:16.793 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ? AND status = ?) 2025-12-22 11:33:16.793 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 3(Long), ACTIVE(String) 2025-12-22 11:33:16.833 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 20 2025-12-22 11:33:16.833 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品SKU数量: 20, 商品ID: 3 2025-12-22 11:33:16.833 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 解析商品主图(多图),数量: 5 2025-12-22 11:33:16.834 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品详情成功,商品ID: 3, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 20, 主图数量: 5 2025-12-22 11:42:27.121 [Thread-8] INFO org.apache.coyote.http11.Http11NioProtocol - Stopping ProtocolHandler ["http-nio-8082"] 2025-12-22 11:42:27.221 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ MTKJ PAY 支付系统正在启动... ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 11:42:27.294 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 25772 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 11:42:27.295 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 11:42:27.799 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 11:42:27.799 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 11:42:27.799 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 11:42:27.825 [restartedMain] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 11:42:27.861 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 11:42:27.861 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 11:42:27.865 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 11:42:27.866 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 11:42:27.866 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 11:42:28.221 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 11:42:28.226 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 11:42:28.237 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'productController': Unsatisfied dependency expressed through field 'productService': No qualifying bean of type 'com.mtkj.mtpay.service.ProductService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)} 2025-12-22 11:42:28.239 [restartedMain] INFO org.apache.catalina.core.StandardService - Stopping service [Tomcat] 2025-12-22 11:42:28.292 [restartedMain] ERROR o.s.b.diagnostics.LoggingFailureAnalysisReporter - *************************** APPLICATION FAILED TO START *************************** Description: Field productService in com.mtkj.mtpay.controller.ProductController required a bean of type 'com.mtkj.mtpay.service.ProductService' that could not be found. The injection point has the following annotations: - @org.springframework.beans.factory.annotation.Autowired(required=true) Action: Consider defining a bean of type 'com.mtkj.mtpay.service.ProductService' in your configuration. 2025-12-22 11:42:28.294 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'productController': Unsatisfied dependency expressed through field 'productService': No qualifying bean of type 'com.mtkj.mtpay.service.ProductService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)} at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:772) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:752) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:145) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:493) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1420) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:600) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:946) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:616) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.mtkj.mtpay.service.ProductService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)} at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1878) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1404) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:769) ... 23 common frames omitted 2025-12-22 11:42:29.742 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ MTKJ PAY 支付系统正在启动... ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 11:42:29.774 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 25772 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 11:42:29.774 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 11:42:30.049 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 11:42:30.049 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 11:42:30.049 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 11:42:30.065 [restartedMain] INFO o.a.c.c.ContainerBase.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 11:42:30.083 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 11:42:30.083 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 11:42:30.085 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 11:42:30.085 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 11:42:30.086 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 11:42:30.277 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 11:42:30.278 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 11:42:30.339 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 配置跨域访问,路径: /api/**, 允许所有来源 2025-12-22 11:42:30.339 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 跨域配置完成 2025-12-22 11:42:30.402 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8082"] 2025-12-22 11:42:30.409 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Started MtkjpayApplication in 0.664 seconds (process running for 5677.355) 2025-12-22 11:42:30.411 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ✅ MTKJ PAY 支付系统启动成功! ✅ ║ ║ ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用信息 ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用名称: {:<45} ║ ║ 运行环境: {:<45} ║ ║ 服务端口: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 访问地址 ║ ╠══════════════════════════════════════════════════════════╣ ║ 后端服务: {:<45} ║ ║ API接口: {:<45} ║ ║ Druid监控: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 状态: 🟢 服务运行中,可以接收请求 ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 11:42:30.411 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - 📌 提示: - 前端代理地址: http://localhost:3000 - 后端API地址: http://localhost:8082//api - 图片上传接口: http://localhost:8082//api/product/upload/image - 商品管理接口: http://localhost:8082//api/product 2025-12-22 13:11:00.333 [Thread-10] INFO org.apache.coyote.http11.Http11NioProtocol - Stopping ProtocolHandler ["http-nio-8082"] 2025-12-22 13:11:00.418 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ MTKJ PAY 支付系统正在启动... ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 13:11:00.465 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 25772 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 13:11:00.465 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 13:11:00.818 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 13:11:00.818 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 13:11:00.818 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 13:11:00.834 [restartedMain] INFO o.a.c.c.ContainerBase.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 13:11:00.854 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 13:11:00.854 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 13:11:00.858 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 13:11:00.858 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 13:11:00.858 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 13:11:01.060 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 13:11:01.062 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 13:11:01.138 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 配置跨域访问,路径: /api/**, 允许所有来源 2025-12-22 13:11:01.138 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 跨域配置完成 2025-12-22 13:11:01.202 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8082"] 2025-12-22 13:11:01.208 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Started MtkjpayApplication in 0.783 seconds (process running for 10988.155) 2025-12-22 13:11:01.211 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ✅ MTKJ PAY 支付系统启动成功! ✅ ║ ║ ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用信息 ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用名称: {:<45} ║ ║ 运行环境: {:<45} ║ ║ 服务端口: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 访问地址 ║ ╠══════════════════════════════════════════════════════════╣ ║ 后端服务: {:<45} ║ ║ API接口: {:<45} ║ ║ Druid监控: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 状态: 🟢 服务运行中,可以接收请求 ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 13:11:01.211 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - 📌 提示: - 前端代理地址: http://localhost:3000 - 后端API地址: http://localhost:8082//api - 图片上传接口: http://localhost:8082//api/product/upload/image - 商品管理接口: http://localhost:8082//api/product 2025-12-22 13:15:32.189 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 13:15:32.228 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 14820 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 13:15:32.229 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 13:15:33.350 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 13:15:33.351 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 13:15:33.352 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 13:15:33.407 [restartedMain] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 13:15:33.492 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 13:15:33.497 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 13:15:33.501 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 13:15:33.502 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 13:15:33.529 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 13:15:34.044 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 13:15:34.192 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 13:15:34.330 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 配置跨域访问,路径: /api/**, 允许所有来源 2025-12-22 13:15:34.332 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 跨域配置完成 2025-12-22 13:15:34.633 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8082"] 2025-12-22 13:15:34.655 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Started MtkjpayApplication in 3.016 seconds (process running for 3.845) 2025-12-22 13:15:34.658 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ✅ MTKJ PAY 支付系统启动成功! ✅ ║ ║ ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用信息 ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用名称: {:<45} ║ ║ 运行环境: {:<45} ║ ║ 服务端口: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 访问地址 ║ ╠══════════════════════════════════════════════════════════╣ ║ 后端服务: {:<45} ║ ║ API接口: {:<45} ║ ║ Druid监控: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 状态: 🟢 服务运行中,可以接收请求 ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 13:15:34.658 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - 📌 提示: - 前端代理地址: http://localhost:3000 - 后端API地址: http://localhost:8082//api - 图片上传接口: http://localhost:8082//api/product/upload/image - 商品管理接口: http://localhost:8082//api/product 2025-12-22 13:15:34.660 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) 2025-12-22 13:39:14.431 [http-nio-8082-exec-1] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' 2025-12-22 13:39:14.468 [http-nio-8082-exec-1] ERROR com.mtkj.mtpay.exception.GlobalExceptionHandler - 运行时异常 org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'java.lang.Long'; For input string: "list" at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.convertIfNecessary(AbstractNamedValueMethodArgumentResolver.java:292) at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.resolveArgument(AbstractNamedValueMethodArgumentResolver.java:135) at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122) at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:218) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:171) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:917) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:829) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:842) Caused by: java.lang.NumberFormatException: For input string: "list" at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67) at java.base/java.lang.Long.parseLong(Long.java:711) at java.base/java.lang.Long.valueOf(Long.java:1163) at org.springframework.util.NumberUtils.parseNumber(NumberUtils.java:206) at org.springframework.beans.propertyeditors.CustomNumberEditor.setAsText(CustomNumberEditor.java:115) at org.springframework.beans.TypeConverterDelegate.doConvertTextValue(TypeConverterDelegate.java:438) at org.springframework.beans.TypeConverterDelegate.doConvertValue(TypeConverterDelegate.java:411) at org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:160) at org.springframework.beans.TypeConverterSupport.convertIfNecessary(TypeConverterSupport.java:80) at org.springframework.beans.TypeConverterSupport.convertIfNecessary(TypeConverterSupport.java:53) at org.springframework.validation.DataBinder.convertIfNecessary(DataBinder.java:860) at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.convertIfNecessary(AbstractNamedValueMethodArgumentResolver.java:284) ... 48 common frames omitted 2025-12-22 13:39:14.524 [http-nio-8082-exec-1] 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.Long'; For input string: "list"] 2025-12-22 13:39:19.318 [http-nio-8082-exec-2] ERROR com.mtkj.mtpay.exception.GlobalExceptionHandler - 运行时异常 org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'java.lang.Long'; For input string: "list" at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.convertIfNecessary(AbstractNamedValueMethodArgumentResolver.java:292) at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.resolveArgument(AbstractNamedValueMethodArgumentResolver.java:135) at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122) at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:218) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:171) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:917) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:829) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:842) Caused by: java.lang.NumberFormatException: For input string: "list" at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67) at java.base/java.lang.Long.parseLong(Long.java:711) at java.base/java.lang.Long.valueOf(Long.java:1163) at org.springframework.util.NumberUtils.parseNumber(NumberUtils.java:206) at org.springframework.beans.propertyeditors.CustomNumberEditor.setAsText(CustomNumberEditor.java:115) at org.springframework.beans.TypeConverterDelegate.doConvertTextValue(TypeConverterDelegate.java:438) at org.springframework.beans.TypeConverterDelegate.doConvertValue(TypeConverterDelegate.java:411) at org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:160) at org.springframework.beans.TypeConverterSupport.convertIfNecessary(TypeConverterSupport.java:80) at org.springframework.beans.TypeConverterSupport.convertIfNecessary(TypeConverterSupport.java:53) at org.springframework.validation.DataBinder.convertIfNecessary(DataBinder.java:860) at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.convertIfNecessary(AbstractNamedValueMethodArgumentResolver.java:284) ... 48 common frames omitted 2025-12-22 13:39:19.321 [http-nio-8082-exec-2] 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.Long'; For input string: "list"] 2025-12-22 13:40:27.113 [http-nio-8082-exec-3] ERROR com.mtkj.mtpay.exception.GlobalExceptionHandler - 运行时异常 org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'java.lang.Long'; For input string: "list" at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.convertIfNecessary(AbstractNamedValueMethodArgumentResolver.java:292) at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.resolveArgument(AbstractNamedValueMethodArgumentResolver.java:135) at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:122) at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:218) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:171) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:917) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:829) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:842) Caused by: java.lang.NumberFormatException: For input string: "list" at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67) at java.base/java.lang.Long.parseLong(Long.java:711) at java.base/java.lang.Long.valueOf(Long.java:1163) at org.springframework.util.NumberUtils.parseNumber(NumberUtils.java:206) at org.springframework.beans.propertyeditors.CustomNumberEditor.setAsText(CustomNumberEditor.java:115) at org.springframework.beans.TypeConverterDelegate.doConvertTextValue(TypeConverterDelegate.java:438) at org.springframework.beans.TypeConverterDelegate.doConvertValue(TypeConverterDelegate.java:411) at org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:160) at org.springframework.beans.TypeConverterSupport.convertIfNecessary(TypeConverterSupport.java:80) at org.springframework.beans.TypeConverterSupport.convertIfNecessary(TypeConverterSupport.java:53) at org.springframework.validation.DataBinder.convertIfNecessary(DataBinder.java:860) at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.convertIfNecessary(AbstractNamedValueMethodArgumentResolver.java:284) ... 48 common frames omitted 2025-12-22 13:40:27.115 [http-nio-8082-exec-3] 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.Long'; For input string: "list"] 2025-12-22 13:40:54.043 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 13:40:54.082 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 5156 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 13:40:54.082 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 13:40:55.138 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 13:40:55.140 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 13:40:55.140 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 13:40:55.182 [restartedMain] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 13:40:55.246 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 13:40:55.249 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 13:40:55.252 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 13:40:55.252 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 13:40:55.270 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 13:40:55.628 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 13:40:55.746 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 13:40:55.853 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 配置跨域访问,路径: /api/**, 允许所有来源 2025-12-22 13:40:55.854 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 跨域配置完成 2025-12-22 13:40:56.105 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8082"] 2025-12-22 13:40:56.123 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Started MtkjpayApplication in 2.569 seconds (process running for 3.346) 2025-12-22 13:40:56.125 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ✅ MTKJ PAY 支付系统启动成功! ✅ ║ ║ ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用信息 ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用名称: {:<45} ║ ║ 运行环境: {:<45} ║ ║ 服务端口: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 访问地址 ║ ╠══════════════════════════════════════════════════════════╣ ║ 后端服务: {:<45} ║ ║ API接口: {:<45} ║ ║ Druid监控: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 状态: 🟢 服务运行中,可以接收请求 ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 13:40:56.125 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - 📌 提示: - 前端代理地址: http://localhost:3000 - 后端API地址: http://localhost:8082//api - 图片上传接口: http://localhost:8082//api/product/upload/image - 商品管理接口: http://localhost:8082//api/product 2025-12-22 13:40:56.127 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) 2025-12-22 13:41:03.210 [http-nio-8082-exec-1] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' 2025-12-22 13:41:03.250 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.controller.ProductController - 获取商品列表 2025-12-22 13:41:03.251 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品列表 2025-12-22 13:41:05.425 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE (status <> ?) ORDER BY create_time DESC 2025-12-22 13:41:05.443 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Parameters: DELETED(String) 2025-12-22 13:41:05.505 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - <== Total: 0 2025-12-22 13:41:05.508 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品数量: 0 2025-12-22 13:41:05.509 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品列表成功,商品数量: 0 2025-12-22 13:41:30.775 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/ddf3415e-1b42-43c0-ae97-6646ad44071f.jpg 2025-12-22 13:41:30.777 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-43.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ddf3415e-1b42-43c0-ae97-6646ad44071f.jpg 2025-12-22 13:41:30.780 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/96442d89-0ce3-458e-9e23-e44cab5128d8.jpg 2025-12-22 13:41:30.780 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-18-56.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/96442d89-0ce3-458e-9e23-e44cab5128d8.jpg 2025-12-22 13:41:30.783 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/736a7ed0-41be-4967-8a8f-1376b332871b.jpg 2025-12-22 13:41:30.786 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-30.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/736a7ed0-41be-4967-8a8f-1376b332871b.jpg 2025-12-22 13:41:30.786 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/16619195-c401-49db-a6f4-7a3d6784bae8.jpg 2025-12-22 13:41:30.787 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-21.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/16619195-c401-49db-a6f4-7a3d6784bae8.jpg 2025-12-22 13:41:30.788 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/22fce301-6259-47eb-b0d5-b0ca36969667.jpg 2025-12-22 13:41:30.789 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-38.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/22fce301-6259-47eb-b0d5-b0ca36969667.jpg 2025-12-22 13:41:56.872 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg 2025-12-22 13:41:56.873 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-19-58.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg 2025-12-22 13:42:06.443 [http-nio-8082-exec-8] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg 2025-12-22 13:42:06.445 [http-nio-8082-exec-8] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-20-05.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg 2025-12-22 13:42:18.858 [http-nio-8082-exec-9] INFO com.mtkj.mtpay.service.impl.OssServiceImpl - 文件上传成功,objectName: 2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg 2025-12-22 13:42:18.859 [http-nio-8082-exec-9] INFO com.mtkj.mtpay.controller.ProductController - 图片上传成功,文件名: Snipaste_2025-12-22_11-20-11.jpg, URL: https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg 2025-12-22 13:44:23.240 [http-nio-8082-exec-10] INFO com.mtkj.mtpay.controller.ProductController - 创建商品请求:CreateProductRequestDTO(name=名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, price=22.98, mainImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/96442d89-0ce3-458e-9e23-e44cab5128d8.jpg, mainImages=[https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/96442d89-0ce3-458e-9e23-e44cab5128d8.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ddf3415e-1b42-43c0-ae97-6646ad44071f.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/736a7ed0-41be-4967-8a8f-1376b332871b.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/16619195-c401-49db-a6f4-7a3d6784bae8.jpg, https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/22fce301-6259-47eb-b0d5-b0ca36969667.jpg], status=ACTIVE, shopId=10001, skus=[CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=13.31, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=191.63, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=101.9, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=85774.69, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=13.31, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=191.63, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=101.9, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=85774.69, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=13.31, currency=MYR, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=191.63, currency=PHP, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=101.9, currency=THB, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=85774.69, currency=VND, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE), CreateProductRequestDTO.CreateProductSkuDTO(sku=【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, price=4.22, currency=SGD, stock=9999, salesAttrs=null, skuImage=https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg, weight=200, size={"length":25,"width":25,"height":25,"unit":"cm"}, specification=null, status=ACTIVE)]) 2025-12-22 13:44:23.339 [http-nio-8082-exec-10] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 开始创建商品,商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, 店铺ID: 10001, SKU数量: 15 2025-12-22 13:44:23.340 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品主图(多图): ["https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/96442d89-0ce3-458e-9e23-e44cab5128d8.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ddf3415e-1b42-43c0-ae97-6646ad44071f.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/736a7ed0-41be-4967-8a8f-1376b332871b.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/16619195-c401-49db-a6f4-7a3d6784bae8.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/22fce301-6259-47eb-b0d5-b0ca36969667.jpg"] 2025-12-22 13:44:23.344 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:23.347 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - ==> Preparing: INSERT INTO mt_product ( name, price, main_image, status, shop_id, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:23.347 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - ==> Parameters: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人(String), 22.98(BigDecimal), ["https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/96442d89-0ce3-458e-9e23-e44cab5128d8.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/ddf3415e-1b42-43c0-ae97-6646ad44071f.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/736a7ed0-41be-4967-8a8f-1376b332871b.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/16619195-c401-49db-a6f4-7a3d6784bae8.jpg","https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/22fce301-6259-47eb-b0d5-b0ca36969667.jpg"](String), ACTIVE(String), 10001(Long), 2025-12-22T13:44:23.344855800(LocalDateTime), 2025-12-22T13:44:23.347273600(LocalDateTime) 2025-12-22 13:44:23.431 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.insert - <== Updates: 1 2025-12-22 13:44:23.433 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品基础信息插入成功,商品ID: 1 2025-12-22 13:44:23.433 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 开始创建SKU,数量: 15 2025-12-22 13:44:23.435 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:23.435 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:23.435 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 13.31(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:23.435674800(LocalDateTime), 2025-12-22T13:44:23.435674800(LocalDateTime) 2025-12-22 13:44:23.524 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:23.524 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 1 2025-12-22 13:44:23.525 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:23.525 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:23.526 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 191.63(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:23.525708500(LocalDateTime), 2025-12-22T13:44:23.525708500(LocalDateTime) 2025-12-22 13:44:23.615 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:23.615 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 2 2025-12-22 13:44:23.616 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:23.616 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:23.617 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 101.9(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:23.616855300(LocalDateTime), 2025-12-22T13:44:23.616855300(LocalDateTime) 2025-12-22 13:44:23.701 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:23.701 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 3 2025-12-22 13:44:23.702 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:23.702 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:23.702 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 85774.69(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:23.702296800(LocalDateTime), 2025-12-22T13:44:23.702296800(LocalDateTime) 2025-12-22 13:44:23.787 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:23.787 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 4 2025-12-22 13:44:23.788 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:23.788 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:23.788 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/a45567dd-f1f8-4fdf-9db2-31925ba38f60.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:23.788457300(LocalDateTime), 2025-12-22T13:44:23.788457300(LocalDateTime) 2025-12-22 13:44:23.875 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:23.875 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】, SKU ID: 5 2025-12-22 13:44:23.878 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:23.878 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:23.878 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 13.31(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:23.878562400(LocalDateTime), 2025-12-22T13:44:23.878562400(LocalDateTime) 2025-12-22 13:44:23.962 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:23.962 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 6 2025-12-22 13:44:23.962 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:23.963 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:23.964 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 191.63(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:23.962487500(LocalDateTime), 2025-12-22T13:44:23.963705600(LocalDateTime) 2025-12-22 13:44:24.043 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:24.043 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 7 2025-12-22 13:44:24.045 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:24.045 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:24.046 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 101.9(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:24.045805400(LocalDateTime), 2025-12-22T13:44:24.045805400(LocalDateTime) 2025-12-22 13:44:24.131 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:24.131 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 8 2025-12-22 13:44:24.132 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:24.132 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:24.134 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 85774.69(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:24.132974700(LocalDateTime), 2025-12-22T13:44:24.132974700(LocalDateTime) 2025-12-22 13:44:24.219 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:24.219 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 9 2025-12-22 13:44:24.219 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:24.221 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:24.221 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/2528ed1f-450e-4854-8f62-c42161156f4e.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:24.220568500(LocalDateTime), 2025-12-22T13:44:24.220568500(LocalDateTime) 2025-12-22 13:44:24.320 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:24.321 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+米白色+浅水蓝【⭐️毛巾实惠3条装】, SKU ID: 10 2025-12-22 13:44:24.322 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:24.322 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:24.323 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 13.31(BigDecimal), MYR(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:24.322278(LocalDateTime), 2025-12-22T13:44:24.322278(LocalDateTime) 2025-12-22 13:44:24.412 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:24.412 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 11 2025-12-22 13:44:24.414 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:24.414 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:24.414 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 191.63(BigDecimal), PHP(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:24.414015(LocalDateTime), 2025-12-22T13:44:24.414015(LocalDateTime) 2025-12-22 13:44:24.493 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:24.494 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 12 2025-12-22 13:44:24.494 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:24.494 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:24.495 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 101.9(BigDecimal), THB(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:24.494791600(LocalDateTime), 2025-12-22T13:44:24.494791600(LocalDateTime) 2025-12-22 13:44:24.581 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:24.581 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 13 2025-12-22 13:44:24.581 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:24.583 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:24.583 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 85774.69(BigDecimal), VND(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:24.581462100(LocalDateTime), 2025-12-22T13:44:24.582461200(LocalDateTime) 2025-12-22 13:44:24.674 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:24.675 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 14 2025-12-22 13:44:24.677 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:24.677 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Preparing: INSERT INTO mt_product_sku ( product_id, sku, price, currency, stock, sku_image, weight, size, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:24.678 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - ==> Parameters: 1(Long), 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】(String), 4.22(BigDecimal), SGD(String), 9999(Integer), https://mtkj2025.oss-cn-hangzhou.aliyuncs.com/2025/12/22/bb638682-2985-4910-ad51-f3f051dd3363.jpg(String), 200(BigDecimal), {"length":25,"width":25,"height":25,"unit":"cm"}(String), ACTIVE(String), 2025-12-22T13:44:24.677028300(LocalDateTime), 2025-12-22T13:44:24.677028300(LocalDateTime) 2025-12-22 13:44:24.762 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductSkuMapper.insert - <== Updates: 1 2025-12-22 13:44:24.763 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - SKU创建成功,商品ID: 1, SKU编码: 【✅性价比首选】米白色+米白色+浅水灰【⭐️毛巾实惠3条装】, SKU ID: 15 2025-12-22 13:44:24.763 [http-nio-8082-exec-10] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 创建或获取商品链接,商品ID: 1, 有效期: 90天 2025-12-22 13:44:24.768 [http-nio-8082-exec-10] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (product_id = ? AND status = ? AND expire_time > ?) ORDER BY create_time DESC LIMIT 1 2025-12-22 13:44:24.768 [http-nio-8082-exec-10] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String), 2025-12-22T13:44:24.763461(LocalDateTime) 2025-12-22 13:44:24.814 [http-nio-8082-exec-10] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 0 2025-12-22 13:44:24.817 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:44:24.817 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductLinkMapper.insert - ==> Preparing: INSERT INTO mt_product_link ( product_id, link_code, full_url, expire_days, expire_time, status, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:44:24.819 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductLinkMapper.insert - ==> Parameters: 1(Long), 3582a1dfbb174d84aac9f465b7180b50(String), http://localhost:3000/product/3582a1dfbb174d84aac9f465b7180b50(String), 90(Integer), 2026-03-22T13:44:24.815798500(LocalDateTime), ACTIVE(String), 2025-12-22T13:44:24.817834(LocalDateTime), 2025-12-22T13:44:24.817834(LocalDateTime) 2025-12-22 13:44:24.923 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductLinkMapper.insert - <== Updates: 1 2025-12-22 13:44:24.924 [http-nio-8082-exec-10] INFO c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 创建商品链接成功,商品ID: 1, 链接码: 3582a1dfbb174d84aac9f465b7180b50, 过期时间: 2026-03-22T13:44:24.815798500 2025-12-22 13:44:24.924 [http-nio-8082-exec-10] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品链接创建成功,商品ID: 1, 链接码: 3582a1dfbb174d84aac9f465b7180b50, URL: http://localhost:3000/product/3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:44:24.924 [http-nio-8082-exec-10] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 商品创建成功,商品ID: 1, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 15 2025-12-22 13:44:24.924 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品详情,商品ID: 1 2025-12-22 13:44:24.924 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 13:44:24.925 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 13:44:24.975 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 13:44:24.977 [http-nio-8082-exec-10] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ? AND status = ?) 2025-12-22 13:44:24.977 [http-nio-8082-exec-10] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String) 2025-12-22 13:44:25.049 [http-nio-8082-exec-10] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 13:44:25.049 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品SKU数量: 15, 商品ID: 1 2025-12-22 13:44:25.053 [http-nio-8082-exec-10] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 解析商品主图(多图),数量: 5 2025-12-22 13:44:25.054 [http-nio-8082-exec-10] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品详情成功,商品ID: 1, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 15, 主图数量: 5 2025-12-22 13:44:25.280 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.controller.ProductController - 获取商品列表 2025-12-22 13:44:25.281 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品列表 2025-12-22 13:44:25.282 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE (status <> ?) ORDER BY create_time DESC 2025-12-22 13:44:25.283 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Parameters: DELETED(String) 2025-12-22 13:44:25.364 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - <== Total: 1 2025-12-22 13:44:25.364 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品数量: 1 2025-12-22 13:44:25.367 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ?) 2025-12-22 13:44:25.367 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long) 2025-12-22 13:44:25.428 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 13:44:25.433 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品列表成功,商品数量: 1 2025-12-22 13:44:25.445 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.controller.ProductController - 获取商品URL,商品ID:1 2025-12-22 13:44:25.447 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品URL,商品ID: 1 2025-12-22 13:44:25.447 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 13:44:25.447 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 13:44:25.496 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 13:44:25.549 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 创建或获取商品链接,商品ID: 1, 有效期: 90天 2025-12-22 13:44:25.551 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (product_id = ? AND status = ? AND expire_time > ?) ORDER BY create_time DESC LIMIT 1 2025-12-22 13:44:25.551 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String), 2025-12-22T13:44:25.550461300(LocalDateTime) 2025-12-22 13:44:25.597 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 1 2025-12-22 13:44:25.597 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 找到现有有效链接,链接码: 3582a1dfbb174d84aac9f465b7180b50, 商品ID: 1 2025-12-22 13:44:25.678 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品URL成功,商品ID: 1, 链接码: 3582a1dfbb174d84aac9f465b7180b50, URL: http://localhost:3000/product/3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:44:39.312 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.controller.ProductController - 根据链接码获取商品详情,链接码:3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:44:39.312 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 根据链接码获取商品ID,链接码: 3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:44:39.313 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 根据链接码获取商品链接,链接码: 3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:44:39.314 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (link_code = ?) LIMIT 1 2025-12-22 13:44:39.314 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 3582a1dfbb174d84aac9f465b7180b50(String) 2025-12-22 13:44:39.354 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 1 2025-12-22 13:44:39.354 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 根据链接码获取商品ID成功,链接码: 3582a1dfbb174d84aac9f465b7180b50, 商品ID: 1 2025-12-22 13:44:39.354 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品详情,商品ID: 1 2025-12-22 13:44:39.355 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 13:44:39.355 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 13:44:39.400 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 13:44:39.400 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ? AND status = ?) 2025-12-22 13:44:39.400 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String) 2025-12-22 13:44:39.448 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 13:44:39.448 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品SKU数量: 15, 商品ID: 1 2025-12-22 13:44:39.448 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 解析商品主图(多图),数量: 5 2025-12-22 13:44:39.449 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品详情成功,商品ID: 1, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 15, 主图数量: 5 2025-12-22 13:48:45.313 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.controller.ProductController - 获取商品列表 2025-12-22 13:48:45.313 [http-nio-8082-exec-3] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品列表 2025-12-22 13:48:45.397 [http-nio-8082-exec-3] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE (status <> ?) ORDER BY create_time DESC 2025-12-22 13:48:45.403 [http-nio-8082-exec-3] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Parameters: DELETED(String) 2025-12-22 13:48:45.438 [http-nio-8082-exec-3] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - <== Total: 1 2025-12-22 13:48:45.438 [http-nio-8082-exec-3] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品数量: 1 2025-12-22 13:48:45.445 [http-nio-8082-exec-3] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ?) 2025-12-22 13:48:45.446 [http-nio-8082-exec-3] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long) 2025-12-22 13:48:45.529 [http-nio-8082-exec-3] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 13:48:45.529 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品列表成功,商品数量: 1 2025-12-22 13:48:45.536 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.controller.ProductController - 获取商品URL,商品ID:1 2025-12-22 13:48:45.536 [http-nio-8082-exec-4] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品URL,商品ID: 1 2025-12-22 13:48:45.536 [http-nio-8082-exec-4] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 13:48:45.543 [http-nio-8082-exec-4] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 13:48:45.585 [http-nio-8082-exec-4] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 13:48:45.626 [http-nio-8082-exec-4] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 创建或获取商品链接,商品ID: 1, 有效期: 90天 2025-12-22 13:48:45.628 [http-nio-8082-exec-4] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (product_id = ? AND status = ? AND expire_time > ?) ORDER BY create_time DESC LIMIT 1 2025-12-22 13:48:45.628 [http-nio-8082-exec-4] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String), 2025-12-22T13:48:45.627531600(LocalDateTime) 2025-12-22 13:48:45.668 [http-nio-8082-exec-4] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 1 2025-12-22 13:48:45.668 [http-nio-8082-exec-4] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 找到现有有效链接,链接码: 3582a1dfbb174d84aac9f465b7180b50, 商品ID: 1 2025-12-22 13:48:45.744 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品URL成功,商品ID: 1, 链接码: 3582a1dfbb174d84aac9f465b7180b50, URL: http://localhost:3000/product/3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:48:52.716 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.controller.ProductController - 根据链接码获取商品详情,链接码:3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:48:52.716 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 根据链接码获取商品ID,链接码: 3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:48:52.716 [http-nio-8082-exec-5] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 根据链接码获取商品链接,链接码: 3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:48:52.716 [http-nio-8082-exec-5] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (link_code = ?) LIMIT 1 2025-12-22 13:48:52.717 [http-nio-8082-exec-5] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 3582a1dfbb174d84aac9f465b7180b50(String) 2025-12-22 13:48:52.760 [http-nio-8082-exec-5] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 1 2025-12-22 13:48:52.760 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 根据链接码获取商品ID成功,链接码: 3582a1dfbb174d84aac9f465b7180b50, 商品ID: 1 2025-12-22 13:48:52.760 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品详情,商品ID: 1 2025-12-22 13:48:52.761 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 13:48:52.761 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 13:48:52.800 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 13:48:52.802 [http-nio-8082-exec-5] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ? AND status = ?) 2025-12-22 13:48:52.802 [http-nio-8082-exec-5] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String) 2025-12-22 13:48:52.844 [http-nio-8082-exec-5] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 13:48:52.844 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品SKU数量: 15, 商品ID: 1 2025-12-22 13:48:52.844 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 解析商品主图(多图),数量: 5 2025-12-22 13:48:52.845 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品详情成功,商品ID: 1, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 15, 主图数量: 5 2025-12-22 13:48:54.604 [http-nio-8082-exec-7] WARN com.mtkj.mtpay.exception.GlobalExceptionHandler - 参数验证失败: {sign=签名不能为空, accId=商户店铺编号不能为空} 2025-12-22 13:48:54.604 [http-nio-8082-exec-7] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MethodArgumentNotValidException: Validation failed for argument [0] in public org.springframework.http.ResponseEntity>> com.mtkj.mtpay.controller.PaymentController.checkout(com.mtkj.mtpay.dto.request.CheckoutRequestDTO) with 2 errors: [Field error in object 'checkoutRequestDTO' on field 'sign': rejected value [null]; codes [NotBlank.checkoutRequestDTO.sign,NotBlank.sign,NotBlank.java.lang.String,NotBlank]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [checkoutRequestDTO.sign,sign]; arguments []; default message [sign]]; default message [签名不能为空]] [Field error in object 'checkoutRequestDTO' on field 'accId': rejected value [null]; codes [NotBlank.checkoutRequestDTO.accId,NotBlank.accId,NotBlank.java.lang.String,NotBlank]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [checkoutRequestDTO.accId,accId]; arguments []; default message [accId]]; default message [商户店铺编号不能为空]] ] 2025-12-22 13:49:06.666 [http-nio-8082-exec-8] WARN com.mtkj.mtpay.exception.GlobalExceptionHandler - 参数验证失败: {sign=签名不能为空, accId=商户店铺编号不能为空} 2025-12-22 13:49:06.666 [http-nio-8082-exec-8] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.bind.MethodArgumentNotValidException: Validation failed for argument [0] in public org.springframework.http.ResponseEntity>> com.mtkj.mtpay.controller.PaymentController.checkout(com.mtkj.mtpay.dto.request.CheckoutRequestDTO) with 2 errors: [Field error in object 'checkoutRequestDTO' on field 'sign': rejected value [null]; codes [NotBlank.checkoutRequestDTO.sign,NotBlank.sign,NotBlank.java.lang.String,NotBlank]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [checkoutRequestDTO.sign,sign]; arguments []; default message [sign]]; default message [签名不能为空]] [Field error in object 'checkoutRequestDTO' on field 'accId': rejected value [null]; codes [NotBlank.checkoutRequestDTO.accId,NotBlank.accId,NotBlank.java.lang.String,NotBlank]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [checkoutRequestDTO.accId,accId]; arguments []; default message [accId]]; default message [商户店铺编号不能为空]] ] 2025-12-22 13:52:51.685 [background-preinit] INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 8.0.1.Final 2025-12-22 13:52:51.720 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 19528 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 13:52:51.721 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 13:52:52.765 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 13:52:52.766 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 13:52:52.767 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 13:52:52.810 [restartedMain] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 13:52:52.874 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 13:52:52.877 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 13:52:52.879 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 13:52:52.879 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 13:52:52.898 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 13:52:53.252 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 13:52:53.371 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 13:52:53.478 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 配置跨域访问,路径: /api/**, 允许所有来源 2025-12-22 13:52:53.480 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 跨域配置完成 2025-12-22 13:52:53.739 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8082"] 2025-12-22 13:52:53.755 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Started MtkjpayApplication in 2.529 seconds (process running for 3.212) 2025-12-22 13:52:53.757 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ✅ MTKJ PAY 支付系统启动成功! ✅ ║ ║ ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用信息 ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用名称: {:<45} ║ ║ 运行环境: {:<45} ║ ║ 服务端口: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 访问地址 ║ ╠══════════════════════════════════════════════════════════╣ ║ 后端服务: {:<45} ║ ║ API接口: {:<45} ║ ║ Druid监控: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 状态: 🟢 服务运行中,可以接收请求 ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 13:52:53.758 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - 📌 提示: - 前端代理地址: http://localhost:3000 - 后端API地址: http://localhost:8082//api - 图片上传接口: http://localhost:8082//api/product/upload/image - 商品管理接口: http://localhost:8082//api/product 2025-12-22 13:52:53.760 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92) at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137) at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136) at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75) at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) 2025-12-22 13:53:01.923 [http-nio-8082-exec-1] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' 2025-12-22 13:53:02.193 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.controller.PaymentController - 收到创建支付订单请求,商户订单号: MTN17663827818302382 2025-12-22 13:53:04.159 [http-nio-8082-exec-1] INFO c.mtkj.mtpay.service.impl.PaymentOrderServiceImpl - 创建支付订单,商户订单号: MTN17663827818302382 2025-12-22 13:53:04.246 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.PaymentOrderMapper.selectList - ==> Preparing: SELECT id,merchant_transaction_id,transaction_id,client_id,acc_id,amount,currency,payment_type,payment_brand,status,token,payment_url,merchant_user_id,shopper_result_url,shopper_cancel_url,notification_url,remark,create_time,update_time FROM payment_order WHERE (merchant_transaction_id = ?) 2025-12-22 13:53:04.266 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.PaymentOrderMapper.selectList - ==> Parameters: MTN17663827818302382(String) 2025-12-22 13:53:04.320 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.PaymentOrderMapper.selectList - <== Total: 0 2025-12-22 13:53:04.322 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.service.impl.PaymentOrderServiceImpl - 使用配置中的accId: your-acc-id 2025-12-22 13:53:04.322 [http-nio-8082-exec-1] INFO c.mtkj.mtpay.service.impl.PingPongPayServiceImpl - 创建支付订单,商户订单号: MTN17663827818302382 2025-12-22 13:53:04.344 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.SignatureServiceImpl - 签名串: your-secret-keyaccId=your-acc-id&amount=13.31¤cy=MYR&merchantTransactionId=MTN17663827818302382¬ificationUrl=http://localhost:3000/api/callback/pingpong&shopperResultUrl=http://localhost:3000/result&signType=MD5 2025-12-22 13:53:04.344 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.SignatureServiceImpl - 生成的签名: 79D5E90ED660D63976FC6D9B75312C56 2025-12-22 13:53:04.344 [http-nio-8082-exec-1] INFO c.mtkj.mtpay.service.impl.PingPongPayServiceImpl - 调用PingPong API: https://sandbox-acquirer-payment.pingpongx.com/v2/checkout 2025-12-22 13:53:04.349 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.service.impl.PingPongPayServiceImpl - 请求体: {"notificationUrl":"http://localhost:3000/api/callback/pingpong","amount":"13.31","riskInfo":{"device":null,"customer":{"customerId":null,"firstName":"","lastName":"","email":"","domain":null,"phone":"","mobile":null,"workPhone":null,"identificationType":null,"identificationId":null,"registerTime":"20251222T055301","registerIp":"","registerTerminal":"PC","registerCountry":null,"registerRange":"1","orderTime":"20251222T055301","orderIp":"","orderCountry":"US","payIp":null,"payCountry":null,"loginTime":null,"loginIp":null,"lastPayTime":null,"acquisitionChannel":null,"firstOrder":null,"nonMemberOrder":null,"preferentialOrder":null,"birthDate":null,"customerStatus":null},"goods":[{"name":"名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人","description":"【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】","sku":"【✅性价比首选】米白色+浅水蓝+天空灰【⭐️毛巾实惠3条装】","averageUnitPrice":"13.31","number":"1","virtualProduct":"N","imgUrl":null}],"shipping":{"firstName":"","lastName":"","phone":null,"email":null,"street":"","postcode":"","city":"","state":"","country":"US","lastModifierStreetTime":null,"lastModifierPhoneTime":null},"billing":{"firstName":"","lastName":"","phone":null,"email":null,"street":"","postcode":"","city":"","state":"","country":"US"},"ecommerce":null,"airline":null,"reCharge":null,"carRental":null},"shopperCancelUrl":"http://localhost:3000/result","shopperResultUrl":"http://localhost:3000/result","threeDSecure":"N","sign":"79D5E90ED660D63976FC6D9B75312C56","language":"zh","paymentType":"SALE","merchantTransactionId":"MTN17663827818302382","accId":"your-acc-id","signType":"MD5","currency":"MYR"} 2025-12-22 13:53:04.962 [http-nio-8082-exec-1] INFO c.mtkj.mtpay.service.impl.PingPongPayServiceImpl - PingPong API响应,code: 500, description: null 2025-12-22 13:53:04.963 [http-nio-8082-exec-1] WARN com.mtkj.mtpay.service.impl.SignatureServiceImpl - 签名参数为空 2025-12-22 13:53:04.964 [http-nio-8082-exec-1] WARN c.mtkj.mtpay.service.impl.PingPongPayServiceImpl - PingPong响应签名验证失败 2025-12-22 13:53:04.964 [http-nio-8082-exec-1] WARN c.mtkj.mtpay.service.impl.PaymentOrderServiceImpl - PingPong返回错误,code: 500, description: null 2025-12-22 13:53:04.968 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:53:04.969 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.PaymentOrderMapper.insert - ==> Preparing: INSERT INTO payment_order ( merchant_transaction_id, acc_id, amount, currency, payment_type, status, merchant_user_id, shopper_result_url, shopper_cancel_url, notification_url, create_time, update_time ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) 2025-12-22 13:53:04.970 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.PaymentOrderMapper.insert - ==> Parameters: MTN17663827818302382(String), your-acc-id(String), 13.31(BigDecimal), MYR(String), SALE(String), FAILED(String), (String), http://localhost:3000/result(String), http://localhost:3000/result(String), http://localhost:3000/api/callback/pingpong(String), 2025-12-22T13:53:04.968540100(LocalDateTime), 2025-12-22T13:53:04.969543(LocalDateTime) 2025-12-22 13:53:05.059 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.PaymentOrderMapper.insert - <== Updates: 1 2025-12-22 13:53:05.062 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.config.MyMetaObjectHandler - 开始插入填充... 2025-12-22 13:53:05.062 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.PaymentRecordMapper.insert - ==> Preparing: INSERT INTO payment_record ( merchant_transaction_id, record_type, status, code, create_time ) VALUES ( ?, ?, ?, ?, ? ) 2025-12-22 13:53:05.062 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.PaymentRecordMapper.insert - ==> Parameters: MTN17663827818302382(String), CHECKOUT(String), FAILED(String), 500(String), 2025-12-22T13:53:05.062233900(LocalDateTime) 2025-12-22 13:53:05.142 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.PaymentRecordMapper.insert - <== Updates: 1 2025-12-22 13:53:05.143 [http-nio-8082-exec-1] INFO c.mtkj.mtpay.service.impl.PaymentOrderServiceImpl - 支付订单创建成功,订单ID: 1 2025-12-22 13:55:19.601 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.controller.ProductController - 根据链接码获取商品详情,链接码:3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:55:19.602 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 根据链接码获取商品ID,链接码: 3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:55:19.602 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 根据链接码获取商品链接,链接码: 3582a1dfbb174d84aac9f465b7180b50 2025-12-22 13:55:19.653 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (link_code = ?) LIMIT 1 2025-12-22 13:55:19.653 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 3582a1dfbb174d84aac9f465b7180b50(String) 2025-12-22 13:55:19.703 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 1 2025-12-22 13:55:19.704 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 根据链接码获取商品ID成功,链接码: 3582a1dfbb174d84aac9f465b7180b50, 商品ID: 1 2025-12-22 13:55:19.704 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品详情,商品ID: 1 2025-12-22 13:55:19.705 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 13:55:19.706 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 13:55:19.749 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 13:55:19.754 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ? AND status = ?) 2025-12-22 13:55:19.756 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String) 2025-12-22 13:55:19.801 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 13:55:19.802 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品SKU数量: 15, 商品ID: 1 2025-12-22 13:55:19.805 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 解析商品主图(多图),数量: 5 2025-12-22 13:55:19.807 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品详情成功,商品ID: 1, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 15, 主图数量: 5 2025-12-22 14:04:39.836 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.controller.ProductController - 获取商品列表 2025-12-22 14:04:39.836 [http-nio-8082-exec-3] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品列表 2025-12-22 14:04:39.880 [http-nio-8082-exec-3] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE (status <> ?) ORDER BY create_time DESC 2025-12-22 14:04:39.881 [http-nio-8082-exec-3] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Parameters: DELETED(String) 2025-12-22 14:04:39.921 [http-nio-8082-exec-3] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - <== Total: 1 2025-12-22 14:04:39.921 [http-nio-8082-exec-3] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品数量: 1 2025-12-22 14:04:39.923 [http-nio-8082-exec-3] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ?) 2025-12-22 14:04:39.923 [http-nio-8082-exec-3] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long) 2025-12-22 14:04:39.980 [http-nio-8082-exec-3] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 14:04:39.989 [http-nio-8082-exec-3] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品列表成功,商品数量: 1 2025-12-22 14:04:40.004 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.controller.ProductController - 获取商品URL,商品ID:1 2025-12-22 14:04:40.004 [http-nio-8082-exec-4] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品URL,商品ID: 1 2025-12-22 14:04:40.005 [http-nio-8082-exec-4] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 14:04:40.005 [http-nio-8082-exec-4] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 14:04:40.045 [http-nio-8082-exec-4] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 14:04:40.083 [http-nio-8082-exec-4] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 创建或获取商品链接,商品ID: 1, 有效期: 90天 2025-12-22 14:04:40.085 [http-nio-8082-exec-4] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (product_id = ? AND status = ? AND expire_time > ?) ORDER BY create_time DESC LIMIT 1 2025-12-22 14:04:40.086 [http-nio-8082-exec-4] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String), 2025-12-22T14:04:40.083041600(LocalDateTime) 2025-12-22 14:04:40.125 [http-nio-8082-exec-4] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 1 2025-12-22 14:04:40.125 [http-nio-8082-exec-4] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 找到现有有效链接,链接码: 3582a1dfbb174d84aac9f465b7180b50, 商品ID: 1 2025-12-22 14:04:40.203 [http-nio-8082-exec-4] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品URL成功,商品ID: 1, 链接码: 3582a1dfbb174d84aac9f465b7180b50, URL: http://localhost:3000/product/3582a1dfbb174d84aac9f465b7180b50 2025-12-22 14:05:44.576 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.controller.ProductController - 获取商品列表 2025-12-22 14:05:44.576 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品列表 2025-12-22 14:05:44.618 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE (status <> ?) ORDER BY create_time DESC 2025-12-22 14:05:44.619 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Parameters: DELETED(String) 2025-12-22 14:05:44.658 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - <== Total: 1 2025-12-22 14:05:44.658 [http-nio-8082-exec-5] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品数量: 1 2025-12-22 14:05:44.660 [http-nio-8082-exec-5] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ?) 2025-12-22 14:05:44.660 [http-nio-8082-exec-5] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long) 2025-12-22 14:05:44.702 [http-nio-8082-exec-5] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 14:05:44.702 [http-nio-8082-exec-5] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品列表成功,商品数量: 1 2025-12-22 14:05:44.706 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.controller.ProductController - 获取商品URL,商品ID:1 2025-12-22 14:05:44.706 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品URL,商品ID: 1 2025-12-22 14:05:44.706 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 14:05:44.706 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 14:05:44.760 [http-nio-8082-exec-6] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 14:05:44.792 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 创建或获取商品链接,商品ID: 1, 有效期: 90天 2025-12-22 14:05:44.792 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (product_id = ? AND status = ? AND expire_time > ?) ORDER BY create_time DESC LIMIT 1 2025-12-22 14:05:44.792 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String), 2025-12-22T14:05:44.792944900(LocalDateTime) 2025-12-22 14:05:44.838 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 1 2025-12-22 14:05:44.838 [http-nio-8082-exec-6] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 找到现有有效链接,链接码: 3582a1dfbb174d84aac9f465b7180b50, 商品ID: 1 2025-12-22 14:05:44.920 [http-nio-8082-exec-6] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品URL成功,商品ID: 1, 链接码: 3582a1dfbb174d84aac9f465b7180b50, URL: http://localhost:3000/product/3582a1dfbb174d84aac9f465b7180b50 2025-12-22 14:06:21.180 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.controller.ProductController - 根据链接码获取商品详情,链接码:3582a1dfbb174d84aac9f465b7180b50 2025-12-22 14:06:21.180 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 根据链接码获取商品ID,链接码: 3582a1dfbb174d84aac9f465b7180b50 2025-12-22 14:06:21.181 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 根据链接码获取商品链接,链接码: 3582a1dfbb174d84aac9f465b7180b50 2025-12-22 14:06:21.182 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (link_code = ?) LIMIT 1 2025-12-22 14:06:21.182 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 3582a1dfbb174d84aac9f465b7180b50(String) 2025-12-22 14:06:21.223 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 1 2025-12-22 14:06:21.223 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 根据链接码获取商品ID成功,链接码: 3582a1dfbb174d84aac9f465b7180b50, 商品ID: 1 2025-12-22 14:06:21.223 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品详情,商品ID: 1 2025-12-22 14:06:21.223 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 14:06:21.223 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 14:06:21.267 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 14:06:21.267 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ? AND status = ?) 2025-12-22 14:06:21.267 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String) 2025-12-22 14:06:21.313 [http-nio-8082-exec-7] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 14:06:21.313 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品SKU数量: 15, 商品ID: 1 2025-12-22 14:06:21.313 [http-nio-8082-exec-7] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 解析商品主图(多图),数量: 5 2025-12-22 14:06:21.313 [http-nio-8082-exec-7] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品详情成功,商品ID: 1, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 15, 主图数量: 5 2025-12-22 14:06:23.167 [http-nio-8082-exec-8] INFO com.mtkj.mtpay.controller.ProductController - 根据链接码获取商品详情,链接码:3582a1dfbb174d84aac9f465b7180b50 2025-12-22 14:06:23.167 [http-nio-8082-exec-8] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 根据链接码获取商品ID,链接码: 3582a1dfbb174d84aac9f465b7180b50 2025-12-22 14:06:23.167 [http-nio-8082-exec-8] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 根据链接码获取商品链接,链接码: 3582a1dfbb174d84aac9f465b7180b50 2025-12-22 14:06:23.169 [http-nio-8082-exec-8] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (link_code = ?) LIMIT 1 2025-12-22 14:06:23.170 [http-nio-8082-exec-8] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 3582a1dfbb174d84aac9f465b7180b50(String) 2025-12-22 14:06:23.220 [http-nio-8082-exec-8] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 1 2025-12-22 14:06:23.222 [http-nio-8082-exec-8] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 根据链接码获取商品ID成功,链接码: 3582a1dfbb174d84aac9f465b7180b50, 商品ID: 1 2025-12-22 14:06:23.222 [http-nio-8082-exec-8] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品详情,商品ID: 1 2025-12-22 14:06:23.223 [http-nio-8082-exec-8] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 14:06:23.223 [http-nio-8082-exec-8] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 14:06:23.264 [http-nio-8082-exec-8] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 14:06:23.265 [http-nio-8082-exec-8] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ? AND status = ?) 2025-12-22 14:06:23.265 [http-nio-8082-exec-8] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String) 2025-12-22 14:06:23.307 [http-nio-8082-exec-8] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 14:06:23.307 [http-nio-8082-exec-8] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品SKU数量: 15, 商品ID: 1 2025-12-22 14:06:23.307 [http-nio-8082-exec-8] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 解析商品主图(多图),数量: 5 2025-12-22 14:06:23.307 [http-nio-8082-exec-8] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品详情成功,商品ID: 1, 商品名称: 名创优品毛巾女2025新款洗澡男士浴巾比全棉100纯棉吸水干发成人, SKU数量: 15, 主图数量: 5 2025-12-22 14:07:53.745 [http-nio-8082-exec-9] ERROR com.mtkj.mtpay.exception.GlobalExceptionHandler - 系统异常 org.springframework.web.servlet.resource.NoResourceFoundException: No static resource api/order. at org.springframework.web.servlet.resource.ResourceHttpRequestHandler.handleRequest(ResourceHttpRequestHandler.java:585) at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:52) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:842) 2025-12-22 14:07:53.748 [http-nio-8082-exec-9] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.servlet.resource.NoResourceFoundException: No static resource api/order.] 2025-12-22 14:08:05.752 [http-nio-8082-exec-10] ERROR com.mtkj.mtpay.exception.GlobalExceptionHandler - 系统异常 org.springframework.web.servlet.resource.NoResourceFoundException: No static resource api/order. at org.springframework.web.servlet.resource.ResourceHttpRequestHandler.handleRequest(ResourceHttpRequestHandler.java:585) at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:52) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:842) 2025-12-22 14:08:05.753 [http-nio-8082-exec-10] WARN o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.web.servlet.resource.NoResourceFoundException: No static resource api/order.] 2025-12-22 15:06:06.771 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.controller.ProductController - 获取商品列表 2025-12-22 15:06:06.773 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询商品列表 2025-12-22 15:06:07.187 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE (status <> ?) ORDER BY create_time DESC 2025-12-22 15:06:07.190 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - ==> Parameters: DELETED(String) 2025-12-22 15:06:07.219 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectList - <== Total: 1 2025-12-22 15:06:07.219 [http-nio-8082-exec-1] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 查询到商品数量: 1 2025-12-22 15:06:07.235 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Preparing: SELECT id,product_id,sku,price,currency,stock,sales_attrs,sku_image,weight,size,specification,status,create_time,update_time FROM mt_product_sku WHERE (product_id = ?) 2025-12-22 15:06:07.235 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - ==> Parameters: 1(Long) 2025-12-22 15:06:07.276 [http-nio-8082-exec-1] DEBUG c.mtkj.mtpay.mapper.MtProductSkuMapper.selectList - <== Total: 15 2025-12-22 15:06:07.278 [http-nio-8082-exec-1] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品列表成功,商品数量: 1 2025-12-22 15:06:07.293 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.controller.ProductController - 获取商品URL,商品ID:1 2025-12-22 15:06:07.293 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品URL,商品ID: 1 2025-12-22 15:06:07.294 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Preparing: SELECT id,name,price,main_image,status,shop_id,create_time,update_time FROM mt_product WHERE id=? 2025-12-22 15:06:07.294 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - ==> Parameters: 1(Long) 2025-12-22 15:06:07.334 [http-nio-8082-exec-2] DEBUG com.mtkj.mtpay.mapper.MtProductMapper.selectById - <== Total: 1 2025-12-22 15:06:07.372 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 创建或获取商品链接,商品ID: 1, 有效期: 90天 2025-12-22 15:06:07.381 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Preparing: SELECT id,product_id,link_code,full_url,expire_days,expire_time,status,create_time,update_time FROM mt_product_link WHERE (product_id = ? AND status = ? AND expire_time > ?) ORDER BY create_time DESC LIMIT 1 2025-12-22 15:06:07.382 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - ==> Parameters: 1(Long), ACTIVE(String), 2025-12-22T15:06:07.372499200(LocalDateTime) 2025-12-22 15:06:07.417 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.mapper.MtProductLinkMapper.selectList - <== Total: 1 2025-12-22 15:06:07.417 [http-nio-8082-exec-2] DEBUG c.mtkj.mtpay.service.impl.ProductLinkServiceImpl - 找到现有有效链接,链接码: 3582a1dfbb174d84aac9f465b7180b50, 商品ID: 1 2025-12-22 15:06:07.480 [http-nio-8082-exec-2] INFO com.mtkj.mtpay.service.impl.ProductServiceImpl - 获取商品URL成功,商品ID: 1, 链接码: 3582a1dfbb174d84aac9f465b7180b50, URL: http://localhost:3000/product/3582a1dfbb174d84aac9f465b7180b50 2025-12-22 15:21:37.797 [Thread-8] INFO org.apache.coyote.http11.Http11NioProtocol - Stopping ProtocolHandler ["http-nio-8082"] 2025-12-22 15:21:38.002 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ MTKJ PAY 支付系统正在启动... ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 15:21:38.073 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 19528 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 15:21:38.073 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 15:21:38.537 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 15:21:38.538 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 15:21:38.538 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 15:21:38.560 [restartedMain] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 15:21:38.582 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 15:21:38.582 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 15:21:38.585 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 15:21:38.585 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 15:21:38.585 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 15:21:38.831 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'customerOrderController' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\controller\CustomerOrderController.class]: Unsatisfied dependency expressed through constructor parameter 0: No qualifying bean of type 'com.mtkj.mtpay.service.CustomerOrderService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {} 2025-12-22 15:21:38.832 [restartedMain] INFO org.apache.catalina.core.StandardService - Stopping service [Tomcat] 2025-12-22 15:21:38.873 [restartedMain] ERROR o.s.b.diagnostics.LoggingFailureAnalysisReporter - *************************** APPLICATION FAILED TO START *************************** Description: Parameter 0 of constructor in com.mtkj.mtpay.controller.CustomerOrderController required a bean of type 'com.mtkj.mtpay.service.CustomerOrderService' that could not be found. Action: Consider defining a bean of type 'com.mtkj.mtpay.service.CustomerOrderService' in your configuration. 2025-12-22 15:21:38.874 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'customerOrderController' defined in file [E:\MTKJPAY\mt-pay\target\classes\com\mtkj\mtpay\controller\CustomerOrderController.class]: Unsatisfied dependency expressed through constructor parameter 0: No qualifying bean of type 'com.mtkj.mtpay.service.CustomerOrderService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {} at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:802) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:241) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1356) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1193) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:563) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:946) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:616) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455) at org.springframework.boot.SpringApplication.run(SpringApplication.java:323) at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.mtkj.mtpay.service.CustomerOrderService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {} at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1878) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1404) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:911) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:789) ... 22 common frames omitted 2025-12-22 15:21:40.336 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ MTKJ PAY 支付系统正在启动... ║ ║ ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 15:21:40.369 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Starting MtkjpayApplication using Java 17.0.12 with PID 19528 (E:\MTKJPAY\mt-startup\target\classes started by 18969 in E:\MTKJPAY) 2025-12-22 15:21:40.369 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - The following 1 profile is active: "dev" 2025-12-22 15:21:40.637 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8082"] 2025-12-22 15:21:40.638 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat] 2025-12-22 15:21:40.638 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.16] 2025-12-22 15:21:40.655 [restartedMain] INFO o.a.c.c.ContainerBase.[Tomcat-1].[localhost].[/] - Initializing Spring embedded WebApplicationContext 2025-12-22 15:21:40.669 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - 初始化MyBatis-Plus分页插件,数据库类型: MYSQL 2025-12-22 15:21:40.669 [restartedMain] INFO com.mtkj.mtpay.config.MyBatisPlusConfig - MyBatis-Plus分页插件配置完成 2025-12-22 15:21:40.672 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 初始化Druid主数据源 2025-12-22 15:21:40.672 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - 配置属性 - URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, Username: mtkj2025 2025-12-22 15:21:40.672 [restartedMain] INFO com.mtkj.mtpay.config.DruidDataSourceConfig - Druid主数据源配置完成,URL: jdbc:mysql://rm-j6c3u06k2afwn8hxw6o.mysql.rds.aliyuncs.com:3306/mtpay?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai 2025-12-22 15:21:40.926 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - 初始化RestClient,配置JSON消息转换器 2025-12-22 15:21:40.931 [restartedMain] INFO com.mtkj.mtpay.config.RestClientConfig - RestClient配置完成 2025-12-22 15:21:41.041 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 配置跨域访问,路径: /api/**, 允许所有来源 2025-12-22 15:21:41.041 [restartedMain] INFO com.mtkj.mtpay.config.WebConfig - 跨域配置完成 2025-12-22 15:21:41.134 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8082"] 2025-12-22 15:21:41.143 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - Started MtkjpayApplication in 0.803 seconds (process running for 5330.599) 2025-12-22 15:21:41.145 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - ╔══════════════════════════════════════════════════════════╗ ║ ║ ║ ✅ MTKJ PAY 支付系统启动成功! ✅ ║ ║ ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用信息 ║ ╠══════════════════════════════════════════════════════════╣ ║ 应用名称: {:<45} ║ ║ 运行环境: {:<45} ║ ║ 服务端口: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 访问地址 ║ ╠══════════════════════════════════════════════════════════╣ ║ 后端服务: {:<45} ║ ║ API接口: {:<45} ║ ║ Druid监控: {:<45} ║ ╠══════════════════════════════════════════════════════════╣ ║ 状态: 🟢 服务运行中,可以接收请求 ║ ╚══════════════════════════════════════════════════════════╝ 2025-12-22 15:21:41.146 [restartedMain] INFO com.mtkj.mtkjpay.MtkjpayApplication - 📌 提示: - 前端代理地址: http://localhost:3000 - 后端API地址: http://localhost:8082//api - 图片上传接口: http://localhost:8082//api/product/upload/image - 商品管理接口: http://localhost:8082//api/product