|
|
Опубліковано 15.01.2019 15:24:50
|
|
|

База даних запитів у помилках. Причина: org.springframework.jdbc.CannotGetJdbcConnectionException: Не вдалося отримати JDBC Connection; Вкладений виняток — java.sql.SQLException: Значення часового поясу сервера 'Öйú±ê×1/4ʱ1/4ä' не розпізнається або представляє більше ніж один часовий пояс. Вам потрібно налаштувати або драйвер сервера, або JDBC (через властивість налаштування serverTimezone), щоб використовувати більш конкретне значення часового поясу, якщо ви хочете використовувати підтримку часових поясів. ### Помилка може існувати в com/itsvse/es/mapper/AccountMapper.java (найкраща здогадка) ### Помилка може стосуватися com.itsvse.es.mapper.AccountMapper.findAllStudent ### Помилка сталася під час виконання запиту ### Причина:
Рішення:
Після рядка з'єднання, додати? serverTimezone=UTC UTC — це єдиний стандартний універсальний час. Повний приклад рядка з'єднання: jdbc:mysql://localhost:3306/test?serverTimezone=UTC Або є ще один варіант: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8, це для розв'язання китайської спотвореної задачі введення, звісно, це також можна поєднати з вищезазначеним: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true& characterEncoding=UTF-8&serverTimezone=UTC
Nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error querying database database. Причина: java.lang.IllegalArgumentException: потрібна dataSource або dataSourceClassName або jdbcUrl.
Рішення:
Головна причина полягає в тому, що під час налаштування джерел даних у версії 1.0 основні з них записуються: spring.datasource.url та spring.datasource.driverClassName. Після оновлення до 2.0 потрібно змінити його на: spring.datasource.jdbc-url та spring.datasource.driver-class-name, щоб вирішити проблему!
Завантаження класу 'com.mysql.jdbc.Driver'. Це застаріло. Новий клас водія — 'com.mysql.cj.jdbc.Driver'. Водій автоматично реєструється через SPI, і ручне завантаження класу водія зазвичай не потрібне.
Рішення:
com.mysql.jdbc.Driver — це той, що працює в mysql-connector-java 5, com.mysql.cj.jdbc.Driver знаходиться у mysql-connector-java 6
Потрібно вказати часовий пояс serverTimezone, при встановленні часового поясу, якщо встановити serverTimezone=UTC, він буде на 8 годин раніше за китайським часом, якщо ви в Китаї, можете обрати Азію/Шанхай або Азію/Гонконг, наприклад: jdbc:mysql://localhost:3306/test? serverTimezone=Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false
|
Попередній:Англійські підручники, пакунок Longman, підручники з англійськоїНаступний:Spring Boot використовує Druid з помилкою Property: spring.datasource.filters
|