Files
MTKJPAY/logs/mt-pay.2025-12-22.log
qiube 502e181db8 fix(spring): 修复应用启动时因缺少CustomerOrderService Bean导致的依赖注入失败
- 添加了缺失的CustomerOrderService Bean定义
- 修正了Spring容器中服务组件的扫描配置
- 解决了由于构造函数注入引起的启动异常
- 更新了相关日志记录以提高故障排查效率
2025-12-22 15:28:39 +08:00

2869 lines
434 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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(<generated>)
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(<generated>)
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(<generated>)
at com.mtkj.mtpay.config.DruidDataSourceConfig$$SpringCGLIB$$FastClass$$1.invoke(<generated>)
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(<generated>)
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(<generated>)
at com.mtkj.mtpay.config.DruidDataSourceConfig$$SpringCGLIB$$FastClass$$1.invoke(<generated>)
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(<generated>)
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.<init>(MapperMethod.java:225)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.<init>(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(<generated>)
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商品ID1
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商品ID1
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.common.Result<java.util.Map<java.lang.String, java.lang.Object>>> 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.common.Result<java.util.Map<java.lang.String, java.lang.Object>>> 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&currency=MYR&merchantTransactionId=MTN17663827818302382&notificationUrl=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商品ID1
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商品ID1
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商品ID1
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