From 71fa0762698c32270c0587cf1f1e566d85279a61 Mon Sep 17 00:00:00 2001 From: dongzeliang <2746733890@qq.com> Date: Fri, 10 Nov 2023 08:43:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 38 + .idea/.gitignore | 8 + .idea/encodings.xml | 7 + .idea/misc.xml | 13 + .idea/uiDesigner.xml | 124 ++ .idea/vcs.xml | 6 + logs/springboot-h2.log | 1347 +++++++++++++++++ pom.xml | 66 + .../muyu/VehicleSimulationApplication.java | 20 + src/main/java/com/muyu/common/HttpStatus.java | 93 ++ src/main/java/com/muyu/common/Result.java | 101 ++ .../com/muyu/config/MyMetaObjectHandler.java | 29 + .../com/muyu/config/MybatisPlusConfig.java | 34 + .../com/muyu/controller/UserController.java | 143 ++ .../muyu/controller/VehicleController.java | 30 + src/main/java/com/muyu/domain/User.java | 98 ++ src/main/java/com/muyu/domain/Vehicle.java | 31 + src/main/java/com/muyu/mapper/UserMapper.java | 16 + .../java/com/muyu/mapper/VehicleMapper.java | 16 + .../java/com/muyu/service/UserService.java | 16 + .../java/com/muyu/service/VehicleService.java | 16 + .../muyu/service/impl/UserServiceImpl.java | 20 + .../muyu/service/impl/VechileServiceImpl.java | 20 + .../java/com/muyu/vehicle/VehicleData.java | 484 ++++++ .../java/com/muyu/vehicle/core/Config.java | 10 + src/main/resources/application.yml | 71 + src/main/resources/data.sql | 4 + src/main/resources/schema.sql | 13 + 28 files changed, 2874 insertions(+) create mode 100644 .gitignore create mode 100644 .idea/.gitignore create mode 100644 .idea/encodings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/uiDesigner.xml create mode 100644 .idea/vcs.xml create mode 100644 logs/springboot-h2.log create mode 100644 pom.xml create mode 100644 src/main/java/com/muyu/VehicleSimulationApplication.java create mode 100644 src/main/java/com/muyu/common/HttpStatus.java create mode 100644 src/main/java/com/muyu/common/Result.java create mode 100644 src/main/java/com/muyu/config/MyMetaObjectHandler.java create mode 100644 src/main/java/com/muyu/config/MybatisPlusConfig.java create mode 100644 src/main/java/com/muyu/controller/UserController.java create mode 100644 src/main/java/com/muyu/controller/VehicleController.java create mode 100644 src/main/java/com/muyu/domain/User.java create mode 100644 src/main/java/com/muyu/domain/Vehicle.java create mode 100644 src/main/java/com/muyu/mapper/UserMapper.java create mode 100644 src/main/java/com/muyu/mapper/VehicleMapper.java create mode 100644 src/main/java/com/muyu/service/UserService.java create mode 100644 src/main/java/com/muyu/service/VehicleService.java create mode 100644 src/main/java/com/muyu/service/impl/UserServiceImpl.java create mode 100644 src/main/java/com/muyu/service/impl/VechileServiceImpl.java create mode 100644 src/main/java/com/muyu/vehicle/VehicleData.java create mode 100644 src/main/java/com/muyu/vehicle/core/Config.java create mode 100644 src/main/resources/application.yml create mode 100644 src/main/resources/data.sql create mode 100644 src/main/resources/schema.sql diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5ff6309 --- /dev/null +++ b/.gitignore @@ -0,0 +1,38 @@ +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### IntelliJ IDEA ### +.idea/modules.xml +.idea/jarRepositories.xml +.idea/compiler.xml +.idea/libraries/ +*.iws +*.iml +*.ipr + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store \ No newline at end of file diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..35410ca --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# 默认忽略的文件 +/shelf/ +/workspace.xml +# 基于编辑器的 HTTP 客户端请求 +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..aa00ffa --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..c3f3b0a --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,13 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml new file mode 100644 index 0000000..2b63946 --- /dev/null +++ b/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/logs/springboot-h2.log b/logs/springboot-h2.log new file mode 100644 index 0000000..18522be --- /dev/null +++ b/logs/springboot-h2.log @@ -0,0 +1,1347 @@ +2023-11-09 10:44:56.136 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 22764 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 10:44:56.139 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 10:44:56.768 [main] WARN org.mybatis.spring.mapper.ClassPathMapperScanner:44 - No MyBatis mapper was found in '[com.muyu]' package. Please check your configuration. +2023-11-09 10:44:57.074 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 10:44:57.086 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 10:44:57.086 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 10:44:57.270 [main] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 10:44:57.270 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 1097 ms +2023-11-09 10:44:57.403 [main] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext:591 - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userController': Unsatisfied dependency expressed through field 'userService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.muyu.mapper.UserMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)} +2023-11-09 10:44:57.408 [main] INFO org.apache.catalina.core.StandardService:173 - Stopping service [Tomcat] +2023-11-09 10:44:57.449 [main] INFO o.s.b.a.l.ConditionEvaluationReportLoggingListener:136 - + +Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. +2023-11-09 10:44:57.479 [main] ERROR org.springframework.boot.SpringApplication:821 - Application run failed +org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userController': Unsatisfied dependency expressed through field 'userService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.muyu.mapper.UserMapper' 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:662) + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:642) + at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) + at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) + at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:921) + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) + at com.muyu.VehicleSimulationApplication.main(VehicleSimulationApplication.java:16) +Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.muyu.mapper.UserMapper' 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:662) + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:642) + at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) + at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) + at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) + at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:659) + ... 20 common frames omitted +Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.muyu.mapper.UserMapper' 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:1801) + at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1357) + at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) + at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:659) + ... 34 common frames omitted +2023-11-09 10:45:16.553 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 11936 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 10:45:16.555 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 10:45:17.227 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 10:45:17.233 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 10:45:17.233 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 10:45:17.296 [main] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 10:45:17.296 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 693 ms +2023-11-09 10:45:17.723 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 10:45:17.787 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 10:45:17.836 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '' +2023-11-09 10:45:17.843 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.651 seconds (JVM running for 2.131) +2023-11-09 10:45:37.513 [http-nio-81-exec-1] INFO o.a.c.core.ContainerBase.[Tomcat].[localhost].[/]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-11-09 10:47:54.436 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 10:47:54.443 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 10:47:57.118 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 28228 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 10:47:57.120 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 10:47:57.706 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 10:47:57.712 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 10:47:57.712 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 10:47:57.762 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 10:47:57.763 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 604 ms +2023-11-09 10:47:58.138 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 10:47:58.199 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 10:47:58.244 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 10:47:58.250 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.408 seconds (JVM running for 1.8) +2023-11-09 10:48:10.420 [http-nio-81-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-11-09 10:54:30.323 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 10:54:30.329 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 10:54:34.407 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 30568 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 10:54:34.410 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 10:54:35.284 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 10:54:35.289 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 10:54:35.289 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 10:54:35.342 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 10:54:35.342 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 895 ms +2023-11-09 10:54:35.725 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 10:54:35.788 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 10:54:35.841 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 10:54:35.848 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.724 seconds (JVM running for 2.121) +2023-11-09 11:00:51.942 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 11:00:51.947 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 11:00:53.512 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 28756 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 11:00:53.515 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 11:00:54.084 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 11:00:54.089 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 11:00:54.090 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 11:00:54.143 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 11:00:54.143 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 594 ms +2023-11-09 11:00:54.532 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 11:00:54.587 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 11:00:54.637 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 11:00:54.644 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.412 seconds (JVM running for 1.828) +2023-11-09 11:05:59.932 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 11:05:59.937 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 11:06:02.621 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 31276 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 11:06:02.624 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 11:06:03.213 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 11:06:03.218 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 11:06:03.218 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 11:06:03.278 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 11:06:03.278 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 617 ms +2023-11-09 11:06:03.695 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 11:06:03.751 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 11:06:03.810 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 11:06:03.819 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.462 seconds (JVM running for 1.845) +2023-11-09 11:06:08.788 [http-nio-81-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-11-09 11:06:08.910 [http-nio-81-exec-1] ERROR o.a.c.c.C.[.[.[/vehicle].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [/vehicle] threw exception [Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-200] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:453) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:429) + at org.h2.message.DbException.get(DbException.java:205) + at org.h2.message.DbException.get(DbException.java:181) + at org.h2.command.Parser.readTableOrView(Parser.java:7628) + at org.h2.command.Parser.readTableFilter(Parser.java:1970) + at org.h2.command.Parser.parseSelectFromPart(Parser.java:2827) + at org.h2.command.Parser.parseSelect(Parser.java:2959) + at org.h2.command.Parser.parseQuerySub(Parser.java:2817) + at org.h2.command.Parser.parseSelectUnion(Parser.java:2649) + at org.h2.command.Parser.parseQuery(Parser.java:2620) + at org.h2.command.Parser.parsePrepared(Parser.java:868) + at org.h2.command.Parser.parse(Parser.java:843) + at org.h2.command.Parser.parse(Parser.java:815) + at org.h2.command.Parser.prepareCommand(Parser.java:738) + at org.h2.engine.Session.prepareLocal(Session.java:657) + at org.h2.server.TcpServerThread.process(TcpServerThread.java:278) + at org.h2.server.TcpServerThread.run(TcpServerThread.java:183) + at java.base/java.lang.Thread.run(Thread.java:833) + +### The error may exist in com/muyu/mapper/VehicleMapper.java (best guess) +### The error may involve com.muyu.mapper.VehicleMapper.selectList +### The error occurred while executing a query +### SQL: SELECT vin,create_time FROM vehicle +### Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-200] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:453) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:429) + at org.h2.message.DbException.get(DbException.java:205) + at org.h2.message.DbException.get(DbException.java:181) + at org.h2.command.Parser.readTableOrView(Parser.java:7628) + at org.h2.command.Parser.readTableFilter(Parser.java:1970) + at org.h2.command.Parser.parseSelectFromPart(Parser.java:2827) + at org.h2.command.Parser.parseSelect(Parser.java:2959) + at org.h2.command.Parser.parseQuerySub(Parser.java:2817) + at org.h2.command.Parser.parseSelectUnion(Parser.java:2649) + at org.h2.command.Parser.parseQuery(Parser.java:2620) + at org.h2.command.Parser.parsePrepared(Parser.java:868) + at org.h2.command.Parser.parse(Parser.java:843) + at org.h2.command.Parser.parse(Parser.java:815) + at org.h2.command.Parser.prepareCommand(Parser.java:738) + at org.h2.engine.Session.prepareLocal(Session.java:657) + at org.h2.server.TcpServerThread.process(TcpServerThread.java:278) + at org.h2.server.TcpServerThread.run(TcpServerThread.java:183) + at java.base/java.lang.Thread.run(Thread.java:833) + +; bad SQL grammar []; nested exception is org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-200] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:453) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:429) + at org.h2.message.DbException.get(DbException.java:205) + at org.h2.message.DbException.get(DbException.java:181) + at org.h2.command.Parser.readTableOrView(Parser.java:7628) + at org.h2.command.Parser.readTableFilter(Parser.java:1970) + at org.h2.command.Parser.parseSelectFromPart(Parser.java:2827) + at org.h2.command.Parser.parseSelect(Parser.java:2959) + at org.h2.command.Parser.parseQuerySub(Parser.java:2817) + at org.h2.command.Parser.parseSelectUnion(Parser.java:2649) + at org.h2.command.Parser.parseQuery(Parser.java:2620) + at org.h2.command.Parser.parsePrepared(Parser.java:868) + at org.h2.command.Parser.parse(Parser.java:843) + at org.h2.command.Parser.parse(Parser.java:815) + at org.h2.command.Parser.prepareCommand(Parser.java:738) + at org.h2.engine.Session.prepareLocal(Session.java:657) + at org.h2.server.TcpServerThread.process(TcpServerThread.java:278) + at org.h2.server.TcpServerThread.run(TcpServerThread.java:183) + at java.base/java.lang.Thread.run(Thread.java:833) +] with root cause +org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:502) + at org.h2.engine.SessionRemote.readException(SessionRemote.java:637) + at org.h2.engine.SessionRemote.done(SessionRemote.java:606) + at org.h2.command.CommandRemote.prepare(CommandRemote.java:78) + at org.h2.command.CommandRemote.(CommandRemote.java:50) + at org.h2.engine.SessionRemote.prepareCommand(SessionRemote.java:480) + at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1116) + at org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:92) + at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:288) + at com.zaxxer.hikari.pool.ProxyConnection.prepareStatement(ProxyConnection.java:337) + at com.zaxxer.hikari.pool.HikariProxyConnection.prepareStatement(HikariProxyConnection.java) + 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.apache.ibatis.logging.jdbc.ConnectionLogger.invoke(ConnectionLogger.java:55) + at jdk.proxy3/jdk.proxy3.$Proxy75.prepareStatement(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.instantiateStatement(PreparedStatementHandler.java:86) + at org.apache.ibatis.executor.statement.BaseStatementHandler.prepare(BaseStatementHandler.java:88) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.prepare(RoutingStatementHandler.java:59) + 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.apache.ibatis.plugin.Invocation.proceed(Invocation.java:49) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:106) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy79.prepare(Unknown Source) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:87) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy78.query(Unknown Source) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at 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.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427) + at jdk.proxy2/jdk.proxy2.$Proxy61.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy67.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:370) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:379) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386) + at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704) + at com.muyu.service.impl.VechileServiceImpl$$EnhancerBySpringCGLIB$$da8a0f0a.list() + at com.muyu.controller.VehicleController.list(VehicleController.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.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + 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:481) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130) + 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:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1790) + 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:833) +2023-11-09 11:06:35.474 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 11:06:35.478 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 11:06:59.680 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 15128 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 11:06:59.682 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 11:07:00.231 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 11:07:00.236 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 11:07:00.236 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 11:07:00.285 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 11:07:00.285 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 571 ms +2023-11-09 11:07:00.698 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 11:07:00.879 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 11:07:00.924 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 11:07:00.931 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.526 seconds (JVM running for 1.932) +2023-11-09 11:07:05.817 [http-nio-81-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-11-09 11:07:05.909 [http-nio-81-exec-1] ERROR o.a.c.c.C.[.[.[/vehicle].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [/vehicle] threw exception [Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found (this database is empty); SQL statement: +SELECT vin,create_time FROM vehicle [42104-214] +### The error may exist in com/muyu/mapper/VehicleMapper.java (best guess) +### The error may involve com.muyu.mapper.VehicleMapper.selectList +### The error occurred while executing a query +### SQL: SELECT vin,create_time FROM vehicle +### Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found (this database is empty); SQL statement: +SELECT vin,create_time FROM vehicle [42104-214] +; bad SQL grammar []; nested exception is org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found (this database is empty); SQL statement: +SELECT vin,create_time FROM vehicle [42104-214]] with root cause +org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found (this database is empty); SQL statement: +SELECT vin,create_time FROM vehicle [42104-214] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:502) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) + at org.h2.message.DbException.get(DbException.java:223) + at org.h2.message.DbException.get(DbException.java:199) + at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8385) + at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8369) + at org.h2.command.Parser.readTableOrView(Parser.java:8358) + at org.h2.command.Parser.readTablePrimary(Parser.java:1863) + at org.h2.command.Parser.readTableReference(Parser.java:2334) + at org.h2.command.Parser.parseSelectFromPart(Parser.java:2772) + at org.h2.command.Parser.parseSelect(Parser.java:2878) + at org.h2.command.Parser.parseQueryPrimary(Parser.java:2762) + at org.h2.command.Parser.parseQueryTerm(Parser.java:2633) + at org.h2.command.Parser.parseQueryExpressionBody(Parser.java:2612) + at org.h2.command.Parser.parseQueryExpressionBodyAndEndOfQuery(Parser.java:2605) + at org.h2.command.Parser.parseQueryExpression(Parser.java:2598) + at org.h2.command.Parser.parseQuery(Parser.java:2567) + at org.h2.command.Parser.parsePrepared(Parser.java:724) + at org.h2.command.Parser.parse(Parser.java:689) + at org.h2.command.Parser.parse(Parser.java:661) + at org.h2.command.Parser.prepareCommand(Parser.java:569) + at org.h2.engine.SessionLocal.prepareLocal(SessionLocal.java:631) + at org.h2.engine.SessionLocal.prepareCommand(SessionLocal.java:554) + at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1116) + at org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:92) + at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:288) + at com.zaxxer.hikari.pool.ProxyConnection.prepareStatement(ProxyConnection.java:337) + at com.zaxxer.hikari.pool.HikariProxyConnection.prepareStatement(HikariProxyConnection.java) + 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.apache.ibatis.logging.jdbc.ConnectionLogger.invoke(ConnectionLogger.java:55) + at jdk.proxy3/jdk.proxy3.$Proxy75.prepareStatement(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.instantiateStatement(PreparedStatementHandler.java:86) + at org.apache.ibatis.executor.statement.BaseStatementHandler.prepare(BaseStatementHandler.java:88) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.prepare(RoutingStatementHandler.java:59) + 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.apache.ibatis.plugin.Invocation.proceed(Invocation.java:49) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:106) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy79.prepare(Unknown Source) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:87) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy78.query(Unknown Source) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at 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.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427) + at jdk.proxy2/jdk.proxy2.$Proxy61.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy67.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:370) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:379) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386) + at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704) + at com.muyu.service.impl.VechileServiceImpl$$EnhancerBySpringCGLIB$$7428ebca.list() + at com.muyu.controller.VehicleController.list(VehicleController.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.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + 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:481) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130) + 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:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1790) + 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:833) +2023-11-09 11:08:59.496 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 11:08:59.498 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 11:09:01.304 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 30236 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 11:09:01.306 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 11:09:01.856 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 11:09:01.860 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 11:09:01.860 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 11:09:01.909 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 11:09:01.909 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 570 ms +2023-11-09 11:09:02.317 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 11:09:02.502 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 11:09:02.635 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 11:09:02.641 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.615 seconds (JVM running for 2.051) +2023-11-09 11:09:13.007 [http-nio-81-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-11-09 11:09:13.096 [http-nio-81-exec-1] ERROR o.a.c.c.C.[.[.[/vehicle].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [/vehicle] threw exception [Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] +### The error may exist in com/muyu/mapper/VehicleMapper.java (best guess) +### The error may involve com.muyu.mapper.VehicleMapper.selectList +### The error occurred while executing a query +### SQL: SELECT vin,create_time FROM vehicle +### Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] +; bad SQL grammar []; nested exception is org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214]] with root cause +org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:502) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) + at org.h2.message.DbException.get(DbException.java:223) + at org.h2.message.DbException.get(DbException.java:199) + at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8398) + at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8369) + at org.h2.command.Parser.readTableOrView(Parser.java:8358) + at org.h2.command.Parser.readTablePrimary(Parser.java:1863) + at org.h2.command.Parser.readTableReference(Parser.java:2334) + at org.h2.command.Parser.parseSelectFromPart(Parser.java:2772) + at org.h2.command.Parser.parseSelect(Parser.java:2878) + at org.h2.command.Parser.parseQueryPrimary(Parser.java:2762) + at org.h2.command.Parser.parseQueryTerm(Parser.java:2633) + at org.h2.command.Parser.parseQueryExpressionBody(Parser.java:2612) + at org.h2.command.Parser.parseQueryExpressionBodyAndEndOfQuery(Parser.java:2605) + at org.h2.command.Parser.parseQueryExpression(Parser.java:2598) + at org.h2.command.Parser.parseQuery(Parser.java:2567) + at org.h2.command.Parser.parsePrepared(Parser.java:724) + at org.h2.command.Parser.parse(Parser.java:689) + at org.h2.command.Parser.parse(Parser.java:661) + at org.h2.command.Parser.prepareCommand(Parser.java:569) + at org.h2.engine.SessionLocal.prepareLocal(SessionLocal.java:631) + at org.h2.engine.SessionLocal.prepareCommand(SessionLocal.java:554) + at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1116) + at org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:92) + at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:288) + at com.zaxxer.hikari.pool.ProxyConnection.prepareStatement(ProxyConnection.java:337) + at com.zaxxer.hikari.pool.HikariProxyConnection.prepareStatement(HikariProxyConnection.java) + 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.apache.ibatis.logging.jdbc.ConnectionLogger.invoke(ConnectionLogger.java:55) + at jdk.proxy3/jdk.proxy3.$Proxy74.prepareStatement(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.instantiateStatement(PreparedStatementHandler.java:86) + at org.apache.ibatis.executor.statement.BaseStatementHandler.prepare(BaseStatementHandler.java:88) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.prepare(RoutingStatementHandler.java:59) + 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.apache.ibatis.plugin.Invocation.proceed(Invocation.java:49) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:106) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy78.prepare(Unknown Source) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:87) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy77.query(Unknown Source) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at 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.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427) + at jdk.proxy2/jdk.proxy2.$Proxy61.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy67.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:370) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:379) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386) + at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704) + at com.muyu.service.impl.VechileServiceImpl$$EnhancerBySpringCGLIB$$c087f74c.list() + at com.muyu.controller.VehicleController.list(VehicleController.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.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + 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:481) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130) + 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:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1790) + 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:833) +2023-11-09 11:10:00.682 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 11:10:00.684 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 11:10:15.057 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 28440 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 11:10:15.061 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 11:10:16.008 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 11:10:16.014 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 11:10:16.014 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 11:10:16.103 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 11:10:16.103 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 982 ms +2023-11-09 11:10:16.628 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 11:10:20.835 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 11:10:20.887 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 11:10:20.895 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 6.284 seconds (JVM running for 6.894) +2023-11-09 11:10:29.044 [http-nio-81-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-11-09 11:10:29.205 [http-nio-81-exec-1] ERROR o.a.c.c.C.[.[.[/vehicle].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [/vehicle] threw exception [Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] +### The error may exist in com/muyu/mapper/VehicleMapper.java (best guess) +### The error may involve com.muyu.mapper.VehicleMapper.selectList +### The error occurred while executing a query +### SQL: SELECT vin,create_time FROM vehicle +### Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] +; bad SQL grammar []; nested exception is org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214]] with root cause +org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:502) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) + at org.h2.message.DbException.get(DbException.java:223) + at org.h2.message.DbException.get(DbException.java:199) + at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8398) + at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8369) + at org.h2.command.Parser.readTableOrView(Parser.java:8358) + at org.h2.command.Parser.readTablePrimary(Parser.java:1863) + at org.h2.command.Parser.readTableReference(Parser.java:2334) + at org.h2.command.Parser.parseSelectFromPart(Parser.java:2772) + at org.h2.command.Parser.parseSelect(Parser.java:2878) + at org.h2.command.Parser.parseQueryPrimary(Parser.java:2762) + at org.h2.command.Parser.parseQueryTerm(Parser.java:2633) + at org.h2.command.Parser.parseQueryExpressionBody(Parser.java:2612) + at org.h2.command.Parser.parseQueryExpressionBodyAndEndOfQuery(Parser.java:2605) + at org.h2.command.Parser.parseQueryExpression(Parser.java:2598) + at org.h2.command.Parser.parseQuery(Parser.java:2567) + at org.h2.command.Parser.parsePrepared(Parser.java:724) + at org.h2.command.Parser.parse(Parser.java:689) + at org.h2.command.Parser.parse(Parser.java:661) + at org.h2.command.Parser.prepareCommand(Parser.java:569) + at org.h2.engine.SessionLocal.prepareLocal(SessionLocal.java:631) + at org.h2.engine.SessionLocal.prepareCommand(SessionLocal.java:554) + at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1116) + at org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:92) + at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:288) + at com.zaxxer.hikari.pool.ProxyConnection.prepareStatement(ProxyConnection.java:337) + at com.zaxxer.hikari.pool.HikariProxyConnection.prepareStatement(HikariProxyConnection.java) + 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.apache.ibatis.logging.jdbc.ConnectionLogger.invoke(ConnectionLogger.java:55) + at jdk.proxy3/jdk.proxy3.$Proxy74.prepareStatement(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.instantiateStatement(PreparedStatementHandler.java:86) + at org.apache.ibatis.executor.statement.BaseStatementHandler.prepare(BaseStatementHandler.java:88) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.prepare(RoutingStatementHandler.java:59) + 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.apache.ibatis.plugin.Invocation.proceed(Invocation.java:49) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:106) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy78.prepare(Unknown Source) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:87) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy77.query(Unknown Source) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at 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.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427) + at jdk.proxy2/jdk.proxy2.$Proxy61.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy67.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:370) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:379) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386) + at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704) + at com.muyu.service.impl.VechileServiceImpl$$EnhancerBySpringCGLIB$$c087f74c.list() + at com.muyu.controller.VehicleController.list(VehicleController.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.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + 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:481) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130) + 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:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1790) + 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:833) +2023-11-09 11:14:21.265 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 11:14:21.267 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 11:14:24.704 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 30552 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 11:14:24.706 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 11:14:25.228 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 11:14:25.234 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 11:14:25.234 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 11:14:25.282 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 11:14:25.282 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 545 ms +2023-11-09 11:14:25.663 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 11:14:29.864 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 11:14:29.905 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 11:14:29.911 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 5.478 seconds (JVM running for 5.877) +2023-11-09 11:14:35.152 [http-nio-81-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-11-09 11:14:35.233 [http-nio-81-exec-1] ERROR o.a.c.c.C.[.[.[/vehicle].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [/vehicle] threw exception [Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] +### The error may exist in com/muyu/mapper/VehicleMapper.java (best guess) +### The error may involve com.muyu.mapper.VehicleMapper.selectList +### The error occurred while executing a query +### SQL: SELECT vin,create_time FROM vehicle +### Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] +; bad SQL grammar []; nested exception is org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214]] with root cause +org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:502) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) + at org.h2.message.DbException.get(DbException.java:223) + at org.h2.message.DbException.get(DbException.java:199) + at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8398) + at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8369) + at org.h2.command.Parser.readTableOrView(Parser.java:8358) + at org.h2.command.Parser.readTablePrimary(Parser.java:1863) + at org.h2.command.Parser.readTableReference(Parser.java:2334) + at org.h2.command.Parser.parseSelectFromPart(Parser.java:2772) + at org.h2.command.Parser.parseSelect(Parser.java:2878) + at org.h2.command.Parser.parseQueryPrimary(Parser.java:2762) + at org.h2.command.Parser.parseQueryTerm(Parser.java:2633) + at org.h2.command.Parser.parseQueryExpressionBody(Parser.java:2612) + at org.h2.command.Parser.parseQueryExpressionBodyAndEndOfQuery(Parser.java:2605) + at org.h2.command.Parser.parseQueryExpression(Parser.java:2598) + at org.h2.command.Parser.parseQuery(Parser.java:2567) + at org.h2.command.Parser.parsePrepared(Parser.java:724) + at org.h2.command.Parser.parse(Parser.java:689) + at org.h2.command.Parser.parse(Parser.java:661) + at org.h2.command.Parser.prepareCommand(Parser.java:569) + at org.h2.engine.SessionLocal.prepareLocal(SessionLocal.java:631) + at org.h2.engine.SessionLocal.prepareCommand(SessionLocal.java:554) + at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1116) + at org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:92) + at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:288) + at com.zaxxer.hikari.pool.ProxyConnection.prepareStatement(ProxyConnection.java:337) + at com.zaxxer.hikari.pool.HikariProxyConnection.prepareStatement(HikariProxyConnection.java) + 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.apache.ibatis.logging.jdbc.ConnectionLogger.invoke(ConnectionLogger.java:55) + at jdk.proxy3/jdk.proxy3.$Proxy74.prepareStatement(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.instantiateStatement(PreparedStatementHandler.java:86) + at org.apache.ibatis.executor.statement.BaseStatementHandler.prepare(BaseStatementHandler.java:88) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.prepare(RoutingStatementHandler.java:59) + 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.apache.ibatis.plugin.Invocation.proceed(Invocation.java:49) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:106) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy78.prepare(Unknown Source) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:87) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy77.query(Unknown Source) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at 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.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427) + at jdk.proxy2/jdk.proxy2.$Proxy61.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy67.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:370) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:379) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386) + at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704) + at com.muyu.service.impl.VechileServiceImpl$$EnhancerBySpringCGLIB$$7ec23fa8.list() + at com.muyu.controller.VehicleController.list(VehicleController.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.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + 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:481) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130) + 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:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1790) + 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:833) +2023-11-09 11:16:04.537 [http-nio-81-exec-4] ERROR o.a.c.c.C.[.[.[/vehicle].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [/vehicle] threw exception [Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] +### The error may exist in com/muyu/mapper/VehicleMapper.java (best guess) +### The error may involve com.muyu.mapper.VehicleMapper.selectList +### The error occurred while executing a query +### SQL: SELECT vin,create_time FROM vehicle +### Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] +; bad SQL grammar []; nested exception is org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214]] with root cause +org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "VEHICLE" not found; SQL statement: +SELECT vin,create_time FROM vehicle [42102-214] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:502) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) + at org.h2.message.DbException.get(DbException.java:223) + at org.h2.message.DbException.get(DbException.java:199) + at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8398) + at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:8369) + at org.h2.command.Parser.readTableOrView(Parser.java:8358) + at org.h2.command.Parser.readTablePrimary(Parser.java:1863) + at org.h2.command.Parser.readTableReference(Parser.java:2334) + at org.h2.command.Parser.parseSelectFromPart(Parser.java:2772) + at org.h2.command.Parser.parseSelect(Parser.java:2878) + at org.h2.command.Parser.parseQueryPrimary(Parser.java:2762) + at org.h2.command.Parser.parseQueryTerm(Parser.java:2633) + at org.h2.command.Parser.parseQueryExpressionBody(Parser.java:2612) + at org.h2.command.Parser.parseQueryExpressionBodyAndEndOfQuery(Parser.java:2605) + at org.h2.command.Parser.parseQueryExpression(Parser.java:2598) + at org.h2.command.Parser.parseQuery(Parser.java:2567) + at org.h2.command.Parser.parsePrepared(Parser.java:724) + at org.h2.command.Parser.parse(Parser.java:689) + at org.h2.command.Parser.parse(Parser.java:661) + at org.h2.command.Parser.prepareCommand(Parser.java:569) + at org.h2.engine.SessionLocal.prepareLocal(SessionLocal.java:631) + at org.h2.engine.SessionLocal.prepareCommand(SessionLocal.java:554) + at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1116) + at org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:92) + at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:288) + at com.zaxxer.hikari.pool.ProxyConnection.prepareStatement(ProxyConnection.java:337) + at com.zaxxer.hikari.pool.HikariProxyConnection.prepareStatement(HikariProxyConnection.java) + 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.apache.ibatis.logging.jdbc.ConnectionLogger.invoke(ConnectionLogger.java:55) + at jdk.proxy3/jdk.proxy3.$Proxy74.prepareStatement(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.instantiateStatement(PreparedStatementHandler.java:86) + at org.apache.ibatis.executor.statement.BaseStatementHandler.prepare(BaseStatementHandler.java:88) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.prepare(RoutingStatementHandler.java:59) + 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.apache.ibatis.plugin.Invocation.proceed(Invocation.java:49) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:106) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy78.prepare(Unknown Source) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:87) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at jdk.proxy2/jdk.proxy2.$Proxy77.query(Unknown Source) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at 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.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427) + at jdk.proxy2/jdk.proxy2.$Proxy61.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:166) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at jdk.proxy2/jdk.proxy2.$Proxy67.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:370) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:379) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386) + at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:704) + at com.muyu.service.impl.VechileServiceImpl$$EnhancerBySpringCGLIB$$7ec23fa8.list() + at com.muyu.controller.VehicleController.list(VehicleController.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.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) + 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:481) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130) + 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:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1790) + 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:833) +2023-11-09 13:59:02.575 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 13:59:02.576 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 13:59:04.892 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 23040 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 13:59:04.894 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 13:59:05.478 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 13:59:05.483 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 13:59:05.483 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 13:59:05.539 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 13:59:05.539 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 608 ms +2023-11-09 13:59:05.556 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 13:59:05.749 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 13:59:05.755 [main] INFO o.s.b.autoconfigure.h2.H2ConsoleAutoConfiguration:98 - H2 console available at '/h2-console'. Database available at 'jdbc:h2:file:~/vehicle/db' +2023-11-09 13:59:06.215 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 13:59:06.222 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.596 seconds (JVM running for 1.985) +2023-11-09 14:13:53.597 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 14:13:53.599 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 14:13:56.798 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 27560 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 14:13:56.802 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 14:13:57.433 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 14:13:57.439 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 14:13:57.439 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 14:13:57.499 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 14:13:57.500 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 662 ms +2023-11-09 14:13:57.522 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 14:13:59.008 [main] ERROR com.zaxxer.hikari.pool.HikariPool:594 - HikariPool-1 - Exception during pool initialization. +org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-214] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:510) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) + at org.h2.message.DbException.get(DbException.java:223) + at org.h2.message.DbException.get(DbException.java:199) + at org.h2.message.DbException.get(DbException.java:188) + at org.h2.engine.Engine.validateUserAndPassword(Engine.java:393) + at org.h2.engine.Engine.createSession(Engine.java:206) + at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:338) + at org.h2.jdbc.JdbcConnection.(JdbcConnection.java:122) + at org.h2.Driver.connect(Driver.java:59) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) + at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561) + at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:115) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) + at org.springframework.boot.autoconfigure.h2.H2ConsoleAutoConfiguration.lambda$logDataSources$1(H2ConsoleAutoConfiguration.java:86) + at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) + at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) + at java.base/java.util.stream.SortedOps$RefSortingSink.end(SortedOps.java:395) + at java.base/java.util.stream.Sink$ChainedReference.end(Sink.java:258) + at java.base/java.util.stream.Sink$ChainedReference.end(Sink.java:258) + at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:510) + at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) + at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) + at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) + at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) + at org.springframework.boot.autoconfigure.h2.H2ConsoleAutoConfiguration.logDataSources(H2ConsoleAutoConfiguration.java:92) + at org.springframework.boot.autoconfigure.h2.H2ConsoleAutoConfiguration.lambda$h2Console$0(H2ConsoleAutoConfiguration.java:68) + at org.springframework.boot.autoconfigure.h2.H2ConsoleAutoConfiguration.withThreadContextClassLoader(H2ConsoleAutoConfiguration.java:77) + at org.springframework.boot.autoconfigure.h2.H2ConsoleAutoConfiguration.h2Console(H2ConsoleAutoConfiguration.java:68) + 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:154) + at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) + at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:213) + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:213) + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:204) + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addServletContextInitializerBeans(ServletContextInitializerBeans.java:98) + at org.springframework.boot.web.servlet.ServletContextInitializerBeans.(ServletContextInitializerBeans.java:86) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getServletContextInitializerBeans(ServletWebServerApplicationContext.java:262) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.selfInitialize(ServletWebServerApplicationContext.java:236) + at org.springframework.boot.web.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:53) + at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4940) + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1328) + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1318) + at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:264) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) + at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) + at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) + at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866) + at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:795) + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1328) + at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1318) + at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:264) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) + at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) + at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) + at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866) + at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:249) + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) + at org.apache.catalina.core.StandardService.startInternal(StandardService.java:428) + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) + at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:922) + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) + at org.apache.catalina.startup.Tomcat.start(Tomcat.java:486) + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:123) + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.(TomcatWebServer.java:104) + at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:481) + at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:211) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:184) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:162) + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:577) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) + at com.muyu.VehicleSimulationApplication.main(VehicleSimulationApplication.java:18) +2023-11-09 14:13:59.542 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 14:14:01.058 [main] ERROR com.zaxxer.hikari.pool.HikariPool:594 - HikariPool-1 - Exception during pool initialization. +org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-214] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:510) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) + at org.h2.message.DbException.get(DbException.java:223) + at org.h2.message.DbException.get(DbException.java:199) + at org.h2.message.DbException.get(DbException.java:188) + at org.h2.engine.Engine.validateUserAndPassword(Engine.java:393) + at org.h2.engine.Engine.createSession(Engine.java:206) + at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:338) + at org.h2.jdbc.JdbcConnection.(JdbcConnection.java:122) + at org.h2.Driver.connect(Driver.java:59) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) + at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561) + at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:115) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) + at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) + at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) + at org.springframework.jdbc.datasource.init.DatabasePopulatorUtils.execute(DatabasePopulatorUtils.java:52) + at org.springframework.boot.jdbc.init.DataSourceScriptDatabaseInitializer.runScripts(DataSourceScriptDatabaseInitializer.java:90) + at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.runScripts(AbstractScriptDatabaseInitializer.java:145) + at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.applyScripts(AbstractScriptDatabaseInitializer.java:107) + at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.applySchemaScripts(AbstractScriptDatabaseInitializer.java:97) + at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.initializeDatabase(AbstractScriptDatabaseInitializer.java:75) + at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.afterPropertiesSet(AbstractScriptDatabaseInitializer.java:65) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322) + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) + at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) + at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:921) + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) + at com.muyu.VehicleSimulationApplication.main(VehicleSimulationApplication.java:18) +2023-11-09 14:14:01.060 [main] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext:591 - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSourceScriptDatabaseInitializer' defined in class path resource [org/springframework/boot/autoconfigure/sql/init/DataSourceInitializationConfiguration.class]: Invocation of init method failed; nested exception is org.springframework.jdbc.datasource.init.UncategorizedScriptException: Failed to execute database script; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-214] +2023-11-09 14:14:01.064 [main] INFO org.apache.catalina.core.StandardService:173 - Stopping service [Tomcat] +2023-11-09 14:14:01.072 [main] INFO o.s.b.a.l.ConditionEvaluationReportLoggingListener:136 - + +Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. +2023-11-09 14:14:01.080 [main] ERROR org.springframework.boot.SpringApplication:821 - Application run failed +org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSourceScriptDatabaseInitializer' defined in class path resource [org/springframework/boot/autoconfigure/sql/init/DataSourceInitializationConfiguration.class]: Invocation of init method failed; nested exception is org.springframework.jdbc.datasource.init.UncategorizedScriptException: Failed to execute database script; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-214] + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) + at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) + at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) + at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322) + at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) + at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) + at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:921) + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) + at com.muyu.VehicleSimulationApplication.main(VehicleSimulationApplication.java:18) +Caused by: org.springframework.jdbc.datasource.init.UncategorizedScriptException: Failed to execute database script; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-214] + at org.springframework.jdbc.datasource.init.DatabasePopulatorUtils.execute(DatabasePopulatorUtils.java:67) + at org.springframework.boot.jdbc.init.DataSourceScriptDatabaseInitializer.runScripts(DataSourceScriptDatabaseInitializer.java:90) + at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.runScripts(AbstractScriptDatabaseInitializer.java:145) + at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.applyScripts(AbstractScriptDatabaseInitializer.java:107) + at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.applySchemaScripts(AbstractScriptDatabaseInitializer.java:97) + at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.initializeDatabase(AbstractScriptDatabaseInitializer.java:75) + at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.afterPropertiesSet(AbstractScriptDatabaseInitializer.java:65) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) + at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) + ... 18 common frames omitted +Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-214] + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:84) + at org.springframework.jdbc.datasource.init.DatabasePopulatorUtils.execute(DatabasePopulatorUtils.java:52) + ... 26 common frames omitted +Caused by: org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-214] + at org.h2.message.DbException.getJdbcSQLException(DbException.java:510) + at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) + at org.h2.message.DbException.get(DbException.java:223) + at org.h2.message.DbException.get(DbException.java:199) + at org.h2.message.DbException.get(DbException.java:188) + at org.h2.engine.Engine.validateUserAndPassword(Engine.java:393) + at org.h2.engine.Engine.createSession(Engine.java:206) + at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:338) + at org.h2.jdbc.JdbcConnection.(JdbcConnection.java:122) + at org.h2.Driver.connect(Driver.java:59) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) + at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561) + at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:115) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) + at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) + at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) + ... 27 common frames omitted +2023-11-09 14:14:14.600 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 19400 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 14:14:14.602 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 14:14:15.166 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 14:14:15.171 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 14:14:15.172 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 14:14:15.224 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 14:14:15.224 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 588 ms +2023-11-09 14:14:15.240 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 14:14:15.425 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 14:14:15.432 [main] INFO o.s.b.autoconfigure.h2.H2ConsoleAutoConfiguration:98 - H2 console available at '/h2-console'. Database available at 'jdbc:h2:file:~/vehicle/db' +2023-11-09 14:14:15.874 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 14:14:15.880 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.554 seconds (JVM running for 1.948) +2023-11-09 14:16:25.684 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 14:16:25.686 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 14:16:28.564 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 28008 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 14:16:28.566 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 14:16:29.135 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 14:16:29.140 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 14:16:29.141 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 14:16:29.202 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 14:16:29.203 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 605 ms +2023-11-09 14:16:29.217 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 14:16:29.418 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 14:16:29.425 [main] INFO o.s.b.autoconfigure.h2.H2ConsoleAutoConfiguration:98 - H2 console available at '/h2-console'. Database available at 'jdbc:h2:file:~/vehicle/db' +2023-11-09 14:16:29.858 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 14:16:29.865 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.585 seconds (JVM running for 2.002) +2023-11-09 14:17:35.569 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 14:17:35.570 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 14:17:37.562 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 28884 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 14:17:37.564 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 14:17:38.254 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 14:17:38.264 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 14:17:38.265 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 14:17:38.342 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 14:17:38.342 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 748 ms +2023-11-09 14:17:38.357 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 14:17:38.529 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 14:17:38.535 [main] INFO o.s.b.autoconfigure.h2.H2ConsoleAutoConfiguration:98 - H2 console available at '/h2-console'. Database available at 'jdbc:h2:file:~/vehicle/db' +2023-11-09 14:17:38.950 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 14:17:38.956 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.66 seconds (JVM running for 2.066) +2023-11-09 14:18:21.948 [http-nio-81-exec-5] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-11-09 14:18:21.985 [http-nio-81-exec-5] INFO com.muyu.config.MyMetaObjectHandler:19 - start insert fill... +2023-11-09 14:18:33.419 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:350 - HikariPool-1 - Shutdown initiated... +2023-11-09 14:18:33.421 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource:352 - HikariPool-1 - Shutdown completed. +2023-11-09 14:18:35.482 [main] INFO com.muyu.VehicleSimulationApplication:55 - Starting VehicleSimulationApplication using Java 17.0.8 on DESKTOP-8J44F3B with PID 32216 (D:\work\test\VehicleSimulation\target\classes started by MuYu in D:\work\test\VehicleSimulation) +2023-11-09 14:18:35.484 [main] INFO com.muyu.VehicleSimulationApplication:631 - No active profile set, falling back to 1 default profile: "default" +2023-11-09 14:18:36.072 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:108 - Tomcat initialized with port(s): 81 (http) +2023-11-09 14:18:36.077 [main] INFO org.apache.catalina.core.StandardService:173 - Starting service [Tomcat] +2023-11-09 14:18:36.077 [main] INFO org.apache.catalina.core.StandardEngine:173 - Starting Servlet engine: [Apache Tomcat/9.0.79] +2023-11-09 14:18:36.129 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring embedded WebApplicationContext +2023-11-09 14:18:36.129 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 611 ms +2023-11-09 14:18:36.145 [main] INFO com.zaxxer.hikari.HikariDataSource:110 - HikariPool-1 - Starting... +2023-11-09 14:18:36.325 [main] INFO com.zaxxer.hikari.HikariDataSource:123 - HikariPool-1 - Start completed. +2023-11-09 14:18:36.332 [main] INFO o.s.b.autoconfigure.h2.H2ConsoleAutoConfiguration:98 - H2 console available at '/h2-console'. Database available at 'jdbc:h2:file:~/vehicle/db' +2023-11-09 14:18:36.757 [main] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer:220 - Tomcat started on port(s): 81 (http) with context path '/vehicle' +2023-11-09 14:18:36.763 [main] INFO com.muyu.VehicleSimulationApplication:61 - Started VehicleSimulationApplication in 1.566 seconds (JVM running for 2.078) +2023-11-09 15:41:38.435 [http-nio-81-exec-10] INFO o.a.c.c.C.[Tomcat].[localhost].[/vehicle]:173 - Initializing Spring DispatcherServlet 'dispatcherServlet' diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..5dbed24 --- /dev/null +++ b/pom.xml @@ -0,0 +1,66 @@ + + + 4.0.0 + + com.muyu + VehicleSimulation + 1.0.0 + + + 17 + 17 + UTF-8 + 3.5.1 + 2.3.31 + 8.0.28 + + + + org.springframework.boot + spring-boot-starter-parent + 2.7.15 + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-test + test + + + + org.projectlombok + lombok + + + + + com.baomidou + mybatis-plus-boot-starter + ${mybatisplus.version} + + + com.baomidou + mybatis-plus-generator + ${mybatisplus.version} + + + org.freemarker + freemarker + + + + + com.h2database + h2 + + + + diff --git a/src/main/java/com/muyu/VehicleSimulationApplication.java b/src/main/java/com/muyu/VehicleSimulationApplication.java new file mode 100644 index 0000000..e60d972 --- /dev/null +++ b/src/main/java/com/muyu/VehicleSimulationApplication.java @@ -0,0 +1,20 @@ +package com.muyu; + +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +/** + * @author DongZeLiang + * @version 1.0 + * @description 车辆模拟启动类 + * @date 2023/11/9 + */ +@SpringBootApplication +@MapperScan(value = "com.muyu.mapper") +public class VehicleSimulationApplication { + + public static void main(String[] args) { + SpringApplication.run(VehicleSimulationApplication.class, args); + } +} diff --git a/src/main/java/com/muyu/common/HttpStatus.java b/src/main/java/com/muyu/common/HttpStatus.java new file mode 100644 index 0000000..771bf06 --- /dev/null +++ b/src/main/java/com/muyu/common/HttpStatus.java @@ -0,0 +1,93 @@ +package com.muyu.common; + +/** + * 返回状态码 + * + * @author ruoyi + */ +public class HttpStatus { + /** + * 操作成功 + */ + public static final int SUCCESS = 200; + + /** + * 对象创建成功 + */ + public static final int CREATED = 201; + + /** + * 请求已经被接受 + */ + public static final int ACCEPTED = 202; + + /** + * 操作已经执行成功,但是没有返回数据 + */ + public static final int NO_CONTENT = 204; + + /** + * 资源已被移除 + */ + public static final int MOVED_PERM = 301; + + /** + * 重定向 + */ + public static final int SEE_OTHER = 303; + + /** + * 资源没有被修改 + */ + public static final int NOT_MODIFIED = 304; + + /** + * 参数列表错误(缺少,格式不匹配) + */ + public static final int BAD_REQUEST = 400; + + /** + * 未授权 + */ + public static final int UNAUTHORIZED = 401; + + /** + * 访问受限,授权过期 + */ + public static final int FORBIDDEN = 403; + + /** + * 资源,服务未找到 + */ + public static final int NOT_FOUND = 404; + + /** + * 不允许的http方法 + */ + public static final int BAD_METHOD = 405; + + /** + * 资源冲突,或者资源被锁 + */ + public static final int CONFLICT = 409; + + /** + * 不支持的数据,媒体类型 + */ + public static final int UNSUPPORTED_TYPE = 415; + + /** + * 系统内部错误 + */ + public static final int ERROR = 500; + + /** + * 接口未实现 + */ + public static final int NOT_IMPLEMENTED = 501; + + /** + * 系统警告消息 + */ + public static final int WARN = 601; +} diff --git a/src/main/java/com/muyu/common/Result.java b/src/main/java/com/muyu/common/Result.java new file mode 100644 index 0000000..aba0134 --- /dev/null +++ b/src/main/java/com/muyu/common/Result.java @@ -0,0 +1,101 @@ +package com.muyu.common; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 响应信息主体 + * + * @author ruoyi + */ +@Data +public class Result implements Serializable { + /** + * 成功 + */ + public static final int SUCCESS = HttpStatus.SUCCESS; + /** + * 失败 + */ + public static final int FAIL = HttpStatus.ERROR; + private static final long serialVersionUID = 1L; + /** + * 系统警告消息 + */ + private static final int WARN = HttpStatus.WARN; + + private int code; + + private String msg; + + private T data; + + public static Result success () { + return restResult(null, SUCCESS, "操作成功"); + } + + public static Result success (T data) { + return restResult(data, SUCCESS, "操作成功"); + } + + public static Result success (T data, String msg) { + return restResult(data, SUCCESS, msg); + } + + public static Result error () { + return restResult(null, FAIL, "操作失败"); + } + + public static Result error (String msg) { + return restResult(null, FAIL, msg); + } + + public static Result error (T data) { + return restResult(data, FAIL, "操作失败"); + } + + public static Result error (T data, String msg) { + return restResult(data, FAIL, msg); + } + + public static Result error (int code, String msg) { + return restResult(null, code, msg); + } + + public static Result warn () { + return restResult(null, WARN, "操作失败"); + } + + public static Result warn (String msg) { + return restResult(null, WARN, msg); + } + + public static Result warn (T data) { + return restResult(data, WARN, "操作失败"); + } + + public static Result warn (T data, String msg) { + return restResult(data, WARN, msg); + } + + public static Result warn (int code, String msg) { + return restResult(null, code, msg); + } + + private static Result restResult (T data, int code, String msg) { + Result apiResult = new Result<>(); + apiResult.setCode(code); + apiResult.setData(data); + apiResult.setMsg(msg); + return apiResult; + } + + public static Boolean isError (Result ret) { + return !isSuccess(ret); + } + + public static Boolean isSuccess (Result ret) { + return Result.SUCCESS == ret.getCode(); + } +} diff --git a/src/main/java/com/muyu/config/MyMetaObjectHandler.java b/src/main/java/com/muyu/config/MyMetaObjectHandler.java new file mode 100644 index 0000000..18e5bab --- /dev/null +++ b/src/main/java/com/muyu/config/MyMetaObjectHandler.java @@ -0,0 +1,29 @@ +package com.muyu.config; + +import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; +import lombok.extern.slf4j.Slf4j; +import org.apache.ibatis.reflection.MetaObject; +import org.springframework.stereotype.Component; + +import java.util.Date; + +/** + * 填充公共字段 + * + */ +@Slf4j +@Component +public class MyMetaObjectHandler implements MetaObjectHandler { + @Override + public void insertFill(MetaObject metaObject) { + log.info("start insert fill..."); + this.setFieldValByName("createTime", new Date(), metaObject); + this.setFieldValByName("updateTime", new Date(), metaObject); + } + + @Override + public void updateFill(MetaObject metaObject) { + log.info("start update fill..."); + this.setFieldValByName("updateTime", new Date(), metaObject); + } +} diff --git a/src/main/java/com/muyu/config/MybatisPlusConfig.java b/src/main/java/com/muyu/config/MybatisPlusConfig.java new file mode 100644 index 0000000..d18f07a --- /dev/null +++ b/src/main/java/com/muyu/config/MybatisPlusConfig.java @@ -0,0 +1,34 @@ +package com.muyu.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +/** + * mybatisplus 配置 + */ +@Configuration +public class MybatisPlusConfig { + /** + * 老版本,目前已失效 + * @return + */ + /**@Bean + public PaginationInterceptor paginationInterceptor() { + PaginationInterceptor paginationInterceptor = new PaginationInterceptor(); + return paginationInterceptor; + }*/ + + + /** + * 新的分页插件,一缓和二缓遵循mybatis的规则, + */ + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor() { + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.H2)); + return interceptor; + } +} diff --git a/src/main/java/com/muyu/controller/UserController.java b/src/main/java/com/muyu/controller/UserController.java new file mode 100644 index 0000000..8aac8fd --- /dev/null +++ b/src/main/java/com/muyu/controller/UserController.java @@ -0,0 +1,143 @@ +package com.muyu.controller; + + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.muyu.common.Result; +import com.muyu.domain.User; +import com.muyu.service.UserService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * com.muyu.controller 测试 + * + */ +@RestController +@RequestMapping("/user") +public class UserController { + + /** + * 构造方法注入 + */ + @Autowired + UserService userService; + + + @PostMapping("/login") + public Result login(){ + return Result.success(); + } + @PostMapping("/info") + public Result info(){ + return Result.success(); + } + + /** + * 保存数据 + * + * @return + */ + @GetMapping("/save") + public Result save() { + User user = new User(); + user.setId(10); + user.setUsername("miaolinlin"); + user.setPwd("121212"); + userService.save(user); + return Result.success(user); + } + + /** + * 修改数据 + * + * @param id + * @return + */ + @GetMapping("/update") + public Result update(Integer id) { + User user = new User(); + user.setId(id); + user.setPwd("1111111111"); + userService.updateById(user); + return Result.success("{}"); + } + + @GetMapping("/list") + public Result list() { + // 返回所有 + List list = userService.list(); + return Result.success(list); + } + + @GetMapping("/listByContion") + public Result listByContion() { + /** + * 条件查询, 通过QueryWrapper来实现查询的条件: + * eq: 代表相等 + * like: 模糊匹配 + * orderBy: 排序 + * in, notin + * 大于,小于,between等 + */ + List list = userService.list(new LambdaQueryWrapper() + // 查询年龄=11的 + .eq(User::getUsername, "miao") + // 模糊匹配 + .like(User::getPwd, "%111%") + // 排序,按照创建时间 + .orderByDesc(User::getCreateTime) + ); + return Result.success(list); + } + + /** + * 根据id获取数据 + * + * @param id + * @return + */ + @GetMapping("/getById") + public Result getById(Integer id) { + User user = userService.getById(id); + return Result.success(user); + } + + /** + * 删除数据 + * + * @param id + * @return + */ + @GetMapping("/delete") + public Result delete(Integer id) { + userService.removeById(id); + return Result.success("success"); + } + + /** + * 分页查询 + * + * @param pageNum + * @param pageSize + * @param name + * @return + */ + @GetMapping("/page") + public Result page(int pageNum, int pageSize, String name) { + IPage page = new Page<>(pageNum, pageSize); + + IPage page1 = userService.page(page, new LambdaQueryWrapper() + // 主要演示这里可以加条件。在name不为空的时候执行 + .like(StringUtils.isNotEmpty(name), User::getUsername, "%" + name + "%")); + + return Result.success(page1); + } +} diff --git a/src/main/java/com/muyu/controller/VehicleController.java b/src/main/java/com/muyu/controller/VehicleController.java new file mode 100644 index 0000000..b9e9f0d --- /dev/null +++ b/src/main/java/com/muyu/controller/VehicleController.java @@ -0,0 +1,30 @@ +package com.muyu.controller; + +import com.muyu.common.Result; +import com.muyu.domain.Vehicle; +import com.muyu.service.VehicleService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @author DongZeLiang + * @version 1.0 + * @description 用户控制层 + * @date 2023/11/9 + */ +@RestController +@RequestMapping("/vehicle") +public class VehicleController { + + @Autowired + private VehicleService vehicleService; + + @GetMapping("/list") + public Result> list(){ + return Result.success(vehicleService.list()); + } +} diff --git a/src/main/java/com/muyu/domain/User.java b/src/main/java/com/muyu/domain/User.java new file mode 100644 index 0000000..b328d47 --- /dev/null +++ b/src/main/java/com/muyu/domain/User.java @@ -0,0 +1,98 @@ +package com.muyu.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serializable; +import java.util.Date; + +/** + *

+ * 用户表 + *

+ * + * @author Leo825 + * @since 2022-07-05 + */ +@TableName("t_user") +public class User implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 用户主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + /** + * 用户名称 + */ + private String username; + + /** + * 密码 + */ + private String pwd; + + /** + * 创建时间,MyMetaObjectHandler 配合使用,入库的时候自动填充 + */ + @TableField(value = "create_time", fill = FieldFill.INSERT) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date createTime; + + /** + * 修改时间,MyMetaObjectHandler 配合使用,入库的时候自动填充 + */ + @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date updateTime; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + public String getPwd() { + return pwd; + } + + public void setPwd(String pwd) { + this.pwd = pwd; + } + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + @Override + public String toString() { + return "User{" + + "id=" + id + + ", username=" + username + + ", pwd=" + pwd + + ", createTime=" + createTime + + ", updateTime=" + updateTime + + "}"; + } +} diff --git a/src/main/java/com/muyu/domain/Vehicle.java b/src/main/java/com/muyu/domain/Vehicle.java new file mode 100644 index 0000000..794a576 --- /dev/null +++ b/src/main/java/com/muyu/domain/Vehicle.java @@ -0,0 +1,31 @@ +package com.muyu.domain; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * @author DongZeLiang + * @version 1.0 + * @description 车辆信息 + * @date 2023/11/9 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@TableName("vehicle") +public class Vehicle { + + @TableId(value = "vin") + private String vin; + + @TableField("create_time") + private Date createTime; +} diff --git a/src/main/java/com/muyu/mapper/UserMapper.java b/src/main/java/com/muyu/mapper/UserMapper.java new file mode 100644 index 0000000..216ec1e --- /dev/null +++ b/src/main/java/com/muyu/mapper/UserMapper.java @@ -0,0 +1,16 @@ +package com.muyu.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.domain.User; + +/** + *

+ * 用户表 Mapper 接口 + *

+ * + * @author Leo825 + * @since 2022-07-05 + */ +public interface UserMapper extends BaseMapper { + +} diff --git a/src/main/java/com/muyu/mapper/VehicleMapper.java b/src/main/java/com/muyu/mapper/VehicleMapper.java new file mode 100644 index 0000000..105a7e5 --- /dev/null +++ b/src/main/java/com/muyu/mapper/VehicleMapper.java @@ -0,0 +1,16 @@ +package com.muyu.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.domain.Vehicle; + +/** + *

+ * 用户表 Mapper 接口 + *

+ * + * @author Leo825 + * @since 2022-07-05 + */ +public interface VehicleMapper extends BaseMapper { + +} diff --git a/src/main/java/com/muyu/service/UserService.java b/src/main/java/com/muyu/service/UserService.java new file mode 100644 index 0000000..2e32554 --- /dev/null +++ b/src/main/java/com/muyu/service/UserService.java @@ -0,0 +1,16 @@ +package com.muyu.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.domain.User; + +/** + *

+ * 用户表 服务类 + *

+ * + * @author Leo825 + * @since 2022-07-05 + */ +public interface UserService extends IService { + +} diff --git a/src/main/java/com/muyu/service/VehicleService.java b/src/main/java/com/muyu/service/VehicleService.java new file mode 100644 index 0000000..9c8454a --- /dev/null +++ b/src/main/java/com/muyu/service/VehicleService.java @@ -0,0 +1,16 @@ +package com.muyu.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.domain.Vehicle; + +/** + *

+ * 用户表 服务类 + *

+ * + * @author Leo825 + * @since 2022-07-05 + */ +public interface VehicleService extends IService { + +} diff --git a/src/main/java/com/muyu/service/impl/UserServiceImpl.java b/src/main/java/com/muyu/service/impl/UserServiceImpl.java new file mode 100644 index 0000000..c6d436f --- /dev/null +++ b/src/main/java/com/muyu/service/impl/UserServiceImpl.java @@ -0,0 +1,20 @@ +package com.muyu.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.domain.User; +import com.muyu.mapper.UserMapper; +import com.muyu.service.UserService; +import org.springframework.stereotype.Service; + +/** + *

+ * 用户表 服务实现类 + *

+ * + * @author Leo825 + * @since 2022-07-05 + */ +@Service +public class UserServiceImpl extends ServiceImpl implements UserService { + +} diff --git a/src/main/java/com/muyu/service/impl/VechileServiceImpl.java b/src/main/java/com/muyu/service/impl/VechileServiceImpl.java new file mode 100644 index 0000000..dedbfd1 --- /dev/null +++ b/src/main/java/com/muyu/service/impl/VechileServiceImpl.java @@ -0,0 +1,20 @@ +package com.muyu.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.domain.Vehicle; +import com.muyu.mapper.VehicleMapper; +import com.muyu.service.VehicleService; +import org.springframework.stereotype.Service; + +/** + *

+ * 用户表 服务实现类 + *

+ * + * @author Leo825 + * @since 2022-07-05 + */ +@Service +public class VechileServiceImpl extends ServiceImpl implements VehicleService { + +} diff --git a/src/main/java/com/muyu/vehicle/VehicleData.java b/src/main/java/com/muyu/vehicle/VehicleData.java new file mode 100644 index 0000000..511abdd --- /dev/null +++ b/src/main/java/com/muyu/vehicle/VehicleData.java @@ -0,0 +1,484 @@ +package com.muyu.vehicle; + + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author 牧鱼 + * @Classname VehicleData + * @Description 车辆模拟数据对象 + * @Date 2021/8/5 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class VehicleData { + /** + * VIN + */ + private String vin; + /** + * 行驶路线 + */ + private String drivingRoute; + + /** + * 经度 + */ + private String longitude; + + /** + * 维度 + */ + private String latitude; + + /** + * 速度 + */ + private String speed; + + /** + * 里程 + */ + private String mileage; + + /** + * 总电压 + */ + private String voltage; + + /** + * 总电流 + */ + private String current; + + /** + * 绝缘电阻 + */ + private String resistance; + + /** + * 档位 + */ + private String gear; + + /** + * 加速踏板行程值 + */ + private String accelerationPedal; + + /** + * 制动踏板行程值 + */ + private String brakePedal; + + /** + * 燃料消耗率 + */ + private String fuelConsumptionRate; + + /** + * 电机控制器温度 + */ + private String motorControllerTemperature; + + /** + * 电机转速 + */ + private String motorSpeed; + + /** + * 电机转矩 + */ + private String motorTorque; + + /** + * 电机温度 + */ + private String motorTemperature; + + /** + * 电机电压 + */ + private String motorVoltage; + + /** + * 电机电流 + */ + private String motorCurrent; + + /** + * 动力电池剩余电量SOC + */ + private String remainingBattery; + + /** + * 当前状态允许的最大反馈功率 + */ + private String maximumFeedbackPower; + + /** + * 当前状态允许最大放电功率 + */ + private String maximumDischargePower; + + /** + * BMS自检计数器 + */ + private String selfCheckCounter; + + /** + * 动力电池充放电电流 + */ + private String totalBatteryCurrent; + + /** + * 动力电池负载端总电压V3 + */ + private String totalBatteryVoltage; + + /** + * 单次最大电压 + */ + private String singleBatteryMaxVoltage; + + /** + * 单体电池最低电压 + */ + private String singleBatteryMinVoltage; + + /** + * 单体电池最高温度 + */ + private String singleBatteryMaxTemperature; + + /** + * 单体电池最低温度 + */ + private String singleBatteryMinTemperature; + + /** + * 动力电池可用容量 + */ + private String availableBatteryCapacity; + + /** + * 车辆状态 + */ + private int vehicleStatus; + + /** + * 充电状态 + */ + private int chargingStatus; + + /** + * 运行状态 + */ + private int operatingStatus; + + /** + * SOC + */ + private int socStatus; + + /** + * 可充电储能装置工作状态 + */ + private int chargingEnergyStorageStatus; + + /** + * 驱动电机状态 + */ + private int driveMotorStatus; + + /** + * 定位是否有效 + */ + private int positionStatus; + + /** + * EAS(汽车防盗系统)状态 + */ + private int easStatus; + + /** + * PTC(电动加热器)状态 + */ + private int ptcStatus; + + /** + * EPS(电动助力系统)状态 + */ + private int epsStatus; + + /** + * ABS(防抱死)状态 + */ + private int absStatus; + + /** + * MCU(电机/逆变器)状态 + */ + private int mcuStatus; + + /** + * 动力电池加热状态 + */ + private int heatingStatus; + + /** + * 动力电池当前状态 + */ + private int batteryStatus; + + /** + * 动力电池保温状态 + */ + private int batteryInsulationStatus; + + /** + * DCDC(电力交换系统)状态 + */ + private int dcdcStatus; + + /** + * CHG(充电机)状态 + */ + private int chgStatus; + + /** + * 车辆状态 报文 + */ + private String vehicleStatusMsg; + /** + * 智能硬件 报文 + */ + private String smartHardwareMsg; + /** + * 电池报文 + */ + private String batteryMsg; + + public String getMsg(){ + StringBuilder sb = new StringBuilder(); + //第一位VIN + sb.append(vin); + //第二位经度 longitude latitude + sb.append(getValue(longitude ,11)); + //第三位维度 longitude latitude + sb.append(getValue(latitude ,10)); + //车速 + sb.append(getValue(speed,6)); + //总里程 + sb.append(getValue(mileage,11)); + // 总电压 + sb.append(getValue(voltage,6)); + //总电流 + sb.append(getValue(current,5)); + //绝缘电阻 79 - 87 + sb.append(getValue(resistance,9)); + //档位 + sb.append(gear); + // 加速踏板行程值 + sb.append(getValue(accelerationPedal,2)); + // 制动踏板行程值 + sb.append(getValue(brakePedal,2)); + // 燃料消耗率 + sb.append(getValue(fuelConsumptionRate,5)); + //电机控制器温度 + sb.append(getValue(motorControllerTemperature,6)); + //电机转速 + sb.append(getValue(motorSpeed,5)); + //点击转矩 + sb.append(getValue(motorTorque,4)); + //电机温度 + sb.append(getValue(motorTemperature,6)); + //电机电压 + sb.append(getValue(motorVoltage,5)); + //电机电流 + sb.append(getValue(motorCurrent,8)); + //动力电池剩余电量SOC + sb.append(getValue(remainingBattery,6)); + //当前状态允许的最大反馈功率 + sb.append(getValue(maximumFeedbackPower,6)); + //当前状态允许最大放电功率 + sb.append(getValue(maximumDischargePower,6)); + //BMS自检计数器 + sb.append(getValue(selfCheckCounter,2)); + //动力电池充放电电流 + sb.append(getValue(totalBatteryCurrent,5)); + //动力电池负载端总电压V3 + sb.append(getValue(totalBatteryVoltage,6)); + //单次最大电压 + sb.append(getValue(singleBatteryMaxVoltage,4)); + //单体电池最低电压 + sb.append(getValue(singleBatteryMinVoltage,4)); + //单体电池最高温度 + sb.append(getValue(singleBatteryMaxTemperature,6)); + //单体电池最低温度 + sb.append(getValue(singleBatteryMinTemperature,6)); + //动力电池可用容量 + sb.append(getValue(availableBatteryCapacity,6)); + //车辆状态 + sb.append(vehicleStatus); + //充电状态 + sb.append(chargingStatus); + //运行状态 + sb.append(operatingStatus); + //SOC + sb.append(socStatus); + //可充电储能装置工作状态 + sb.append(chargingEnergyStorageStatus); + //驱动电机状态 + sb.append(driveMotorStatus); + //定位是否有效 + sb.append(positionStatus); + //EAS + sb.append(easStatus); + //PTC + sb.append(ptcStatus); + //EPS + sb.append(epsStatus); + //ABS + sb.append(absStatus); + //MCU + sb.append(mcuStatus); + //动力电池加热状态 + sb.append(heatingStatus); + //动力电池当前状态 + sb.append(batteryStatus); + //动力电池保温状态 + sb.append(batteryInsulationStatus); + //DCDC + sb.append(dcdcStatus); + //CHG + sb.append(chgStatus); + return sb.toString(); + } + + public String getValue(String val , int valLength){ + int length = val.length(); + if (length > valLength){ + return val.substring( 0 , valLength); + } + val = val + "0".repeat(valLength - length); + return val; + } + + /** + VIN + vin; + 行驶路线 + drivingRoute; + 经度 + longitude; + 维度 + latitude; + 速度 + speed; + 里程 + mileage; + 总电压 + voltage; + 总电流 + current; + 绝缘电阻 + resistance; + 档位 + gear; + 加速踏板行程值 + accelerationPedal; + 制动踏板行程值 + brakePedal; + 燃料消耗率 + fuelConsumptionRate; + */ + + /** + 电机控制器温度 + motorControllerTemperature; + 电机转速 + motorSpeed; + 电机转矩 + motorTorque; + 电机温度 + motorTemperature; + 电机电压 + motorVoltage; + 电机电流 + motorCurrent; + */ + + /** + 动力电池剩余电量SOC + remainingBattery; + 当前状态允许的最大反馈功率 + maximumFeedbackPower; + 当前状态允许最大放电功率 + maximumDischargePower; + BMS自检计数器 + selfCheckCounter; + 动力电池充放电电流 + totalBatteryCurrent; + 动力电池负载端总电压V3 + totalBatteryVoltage; + 单次最大电压 + singleBatteryMaxVoltage; + 单体电池最低电压 + singleBatteryMinVoltage; + 单体电池最高温度 + singleBatteryMaxTemperature; + 单体电池最低温度 + singleBatteryMinTemperature; + 动力电池可用容量 + availableBatteryCapacity; + */ + + /** + 车辆状态 + vehicleStatus; + 充电状态 + chargingStatus; + 运行状态 + operatingStatus; + SOC + socStatus; + 可充电储能装置工作状态 + chargingEnergyStorageStatus; + 驱动电机状态 + driveMotorStatus; + 定位是否有效 + positionStatus; + */ + + /** + EAS(汽车防盗系统)状态 + easStatus; + PTC(电动加热器)状态 + ptcStatus; + EPS(电动助力系统)状态 + epsStatus; + ABS(防抱死)状态 + absStatus; + MCU(电机/逆变器)状态 + mcuStatus; + */ + + /** + 动力电池加热状态 + heatingStatus; + 动力电池当前状态 + batteryStatus; + 动力电池保温状态 + batteryInsulationStatus; + DCDC(电力交换系统)状态 + dcdcStatus; + CHG(充电机)状态 + chgStatus; + */ +} diff --git a/src/main/java/com/muyu/vehicle/core/Config.java b/src/main/java/com/muyu/vehicle/core/Config.java new file mode 100644 index 0000000..d238064 --- /dev/null +++ b/src/main/java/com/muyu/vehicle/core/Config.java @@ -0,0 +1,10 @@ +package com.muyu.vehicle.core; + +/** + * @author DongZeLiang + * @version 1.0 + * @description 配置 + * @date 2023/11/9 + */ +public class Config { +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml new file mode 100644 index 0000000..db303b8 --- /dev/null +++ b/src/main/resources/application.yml @@ -0,0 +1,71 @@ +server: + port: 81 + servlet: + context-path: /vehicle +spring: + datasource: + username: muyu + password: 123456 + # 如果需要数据本地化,则改成 file 方式 + # jdbc:h2:mem:testDB;DB_CLOSE_DELAY=-1 + url: jdbc:h2:file:~/vehicle/db;AUTO_SERVER=TRUE;DB_CLOSE_DELAY=-1 + driver-class-name: org.h2.Driver + # 开启这个配置就可以通过 web 页面访问了,例如:http://localhost:8080/springboot-h2/h2-console + h2: + console: + enabled: true + settings: + # 开启h2 console 跟踪 方便调试 默认 false + trace: true + # 允许console 远程访问 默认false + web-allow-others: true + # h2 访问路径上下文 + path: /h2-console + sql: + init: + schema-locations: classpath:schema.sql + data-locations: classpath:data.sql + mode: always + continue-on-error: true + + +# mybatis-plus 配置 +mybatis-plus: + mapper-locations: classpath*:/com.muyu.mapper/**/*.xml + #实体扫描,多个package用逗号或者分号分隔 + typeAliasesPackage: com.dmo.entity + global-config: + #数据库相关配置 + db-config: + #主键类型 AUTO:"数据库ID自增", INPUT:"用户输入ID", ID_WORKER:"全局唯一ID (数字类型唯一ID)", UUID:"全局唯一ID UUID"; + id-type: AUTO + #字段策略 IGNORED:"忽略判断",NOT_NULL:"非 NULL 判断"),NOT_EMPTY:"非空判断" + field-strategy: NOT_NULL + #驼峰下划线转换 + column-underline: true + logic-delete-value: -1 + logic-not-delete-value: 0 + banner: false + #原生配置 + configuration: + # 打印sql + log-impl: org.apache.ibatis.logging.stdout.StdOutImpl + map-underscore-to-camel-case: true + cache-enabled: false + call-setters-on-nulls: true + jdbc-type-for-null: 'null' + +# 日志输出配置 +logging: + level: + root: INFO + org: + springframework: + security: WARN + web: ERROR + file: + path: ./logs + name: './logs/springboot-h2.log' + pattern: + file: '%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50}:%L - %msg%n' + console: '%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50}:%L - %msg%n' diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql new file mode 100644 index 0000000..7c06f43 --- /dev/null +++ b/src/main/resources/data.sql @@ -0,0 +1,4 @@ +insert into t_user(id, username, pwd, create_time, update_time) values (0,'zhhangsan','1222', {ts '2022-07-27 18:47:52.69'}, {ts '2022-07-27 18:47:52.69'}) + + +insert into vehicle(id,vin, create_time) values (1,'vin123456789123456',{ts '2022-07-27 18:47:52.69'}) diff --git a/src/main/resources/schema.sql b/src/main/resources/schema.sql new file mode 100644 index 0000000..4e5fc4f --- /dev/null +++ b/src/main/resources/schema.sql @@ -0,0 +1,13 @@ +create table if not exists t_user ( + `id` int primary key not null , + `username` char (50) not null, + `pwd` char(50) not null, + `create_time` datetime not null, + `update_time` datetime +) ; + +create table if not exists vehicle ( + `id` int primary key not null , + `vin` char (50) not null, + `create_time` datetime not null +) ;