Σφάλμα στη βάση δεδομένων ερωτημάτων. Αιτία: org.springframework.jdbc.CannotGetJdbcConnectionException: Απέτυχε η λήψη της σύνδεσης JDBC. Η ένθετη εξαίρεση είναι java.sql.SQLException: Η τιμή ζώνης ώρας διακομιστή 'Öйú±ê×1/4ʱ1/4ä' δεν αναγνωρίζεται ή αντιπροσωπεύει περισσότερες από μία ζώνες ώρας. Αν θέλετε να χρησιμοποιήσετε την υποστήριξη ζώνης ώρας, πρέπει να ρυθμίσετε είτε το διακομιστή είτε το πρόγραμμα οδήγησης JDBC (μέσω της ιδιότητας serverTimezone configuration) ώστε να χρησιμοποιεί μια πιο συγκεκριμένη τιμή ζώνης ώρας. ### Το σφάλμα μπορεί να υπάρχει στο 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
Η ένθετη εξαίρεση είναι org.apache.ibatis.exceptions.PersistenceException: ### Σφάλμα στη βάση δεδομένων ερωτημάτων. Αιτία: 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.Το πρόγραμμα οδήγησης βρίσκεται στο mysql-connector-java 6
Πρέπει να καθορίσετε τη ζώνη ώρας serverTimezone, όταν ορίζετε τη ζώνη ώρας, εάν ορίσετε serverTimezone=UTC, θα είναι 8 ώρες μπροστά από την ώρα της Κίνας, εάν βρίσκεστε στην Κίνα, μπορείτε να επιλέξετε Ασία/Σαγκάη ή Ασία/Χονγκ Κονγκ, για παράδειγμα: jdbc:mysql://localhost:3306/test; serverTimezone=Σαγκάη&useUnicode=true&characterEncoding=utf8&useSSL=false
|