Erreur lors de la requête dans la base de données. Cause : org.springframework.jdbc.CannotGetJdbcConnectionException : Échec à obtenir la connexion JDBC ; L’exception imbriquée est java.sql.SQLExcetion : La valeur du fuseau horaire serveur « Öйú±ê×1/4ʱ1/4ä » n’est pas reconnue ou représente plus d’un fuseau horaire. Vous devez configurer soit le serveur soit le pilote JDBC (via la propriété de configuration serverTimezone) pour utiliser une valeur de fuseau horaire plus spécifique si vous souhaitez utiliser le support du fuseau horaire. ### L’erreur peut exister dans com/itsvse/es/mapper/AccountMapper.java (meilleure estimation) ### L’erreur peut concerner com.itsvse.es.mapper.AccountMapper.findAllStudent ### L’erreur s’est produite pendant exécution d’une requête ### Cause :
Solution:
Après la chaîne de connexion, ajouter ? serverTimezone=UTC UTC est le temps universel standard uniforme. Exemple complet de chaîne de connexion : jdbc :mysql ://localhost :3306/test ?serverTimezone=UTC Ou il existe une autre option : jdbc :mysql ://127.0.0.1:3306/test ?useUnicode=true&characterEncoding=UTF-8, cela vise à résoudre le problème de l’entrée brouillée chinoise, bien sûr, cela peut aussi être combiné avec ce qui précède : jdbc :mysql ://127.0.0.1:3306/test ?useUnicode=true& characterEncoding=UTF-8&serverTimezone=UTC
Exception imbriquée est org.apache.ibatis.exceptions.PersistenceException : ### Erreur interrogation de base de données. Cause : java.lang.IllegalArgumentException : dataSource ou dataSourceClassName ou jdbcUrl est requise.
Solution:
La raison principale est que, lors de la configuration des sources de données en 1.0, les principales sont écrites : spring.datasource.url et spring.datasource.driverClassName. Après la mise à jour 2.0, il faut la changer en : spring.datasource.jdbc-url et spring.datasource.driver-class-name pour résoudre le problème !
Chargement de la classe 'com.mysql.jdbc.Driver'. Ceci est déprécié. La nouvelle classe de pilotes est 'com.mysql.cj.jdbc.Driver'. Le conducteur est automatiquement enregistré via le SPI et le chargement manuel de la classe de conducteurs est généralement inutile.
Solution:
com.mysql.jdbc.Driver est celui dans mysql-connector-java 5, com.mysql.cj.jdbc.Driver est dans mysql-connector-java 6
Vous devez spécifier le fuseau horaire serverTimezone, lors de la définition, si vous définissez serverTimezone=UTC, il sera 8 heures en avance sur l’heure de Chine, si vous êtes en Chine, vous pouvez choisir Asia/Shanghai ou Asia/Hong Kong, par exemple : jdbc :mysql ://localhost :3306/test ? serverTimezone=Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false
|