Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 12307|Resposta: 0

[Fonte] Soluções comuns de erro do MySQL Spring

[Copiar link]
Publicado em 15/01/2019 15:24:50 | | |
Banco de dados de consulta por erro. Causa: org.springframework.jdbc.CannotGetJdbcConnectionException: Não conseguiu obter a conexão JDBC; Exceção aninhada é java.sql.SQLException: O valor do fuso horário do servidor 'Öйú±ê×1/4ʱ1/4ä' não é reconhecido ou representa mais de um fuso horário. Você deve configurar o servidor ou o driver JDBC (via a propriedade de configuração serverTimezone) para usar um valor de fuso horário mais específico se quiser utilizar suporte a fusos horários. ### O erro pode existir em com/itsvse/es/mapper/AccountMapper.java (melhor palpite) ### O erro pode envolver com.itsvse.es.mapper.AccountMapper.findAllStudent ### O erro ocorreu enquanto executando uma consulta ### Causa:


Solução:

Depois da cadeia de conexão, acrescentar? serverTimezone=UTC
UTC é o Tempo Universal Padrão Uniforme.
Exemplo completo de string de conexão: jdbc:mysql://localhost:3306/test?serverTimezone=UTC
Ou existe outra opção: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8, isso serve para resolver o problema da entrada chinesa distorcida, claro, também pode ser combinado com o acima: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true& characterEncoding=UTF-8&serverTimezone=UTC



Exceção aninhada é org.apache.ibatis.exceptions.PersistenceException: ### Banco de dados de consulta de erro. Causa: java.lang.IllegalArgumentException: dataSource ou dataSourceClassName ou jdbcUrl são necessários.



Solução:

A principal razão é que, no processo de configuração das fontes de dados na versão 1.0, as principais são escritas: spring.datasource.url e spring.datasource.driverClassName.
Após a atualização para a versão 2.0, você precisa mudar para: spring.datasource.jdbc-url e spring.datasource.driver-class-name para resolver o problema!


Carregando a classe 'com.mysql.jdbc.Driver'. Isso está obsoleto. A nova classe de driver é 'com.mysql.cj.jdbc.Driver'. O driver é automaticamente registrado via SPI e o carregamento manual da classe de driver geralmente não é necessário.


Solução:

com.mysql.jdbc.Driver é o que está no mysql-connector-java 5,
com.mysql.cj.jdbc.Driver está em mysql-connector-java 6


Você precisa especificar o fuso horário serverTimezone, ao definir o fuso horário, se definir serverTimezone=UTC, ele estará 8 horas adiantado para o horário da China, se estiver na China, pode escolher Ásia/Xangai ou Ásia/Hong Kong, por exemplo: jdbc:mysql://localhost:3306/test? serverTimezone=Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false






Anterior:Livros didáticos de inglês Longman packpack Livros didáticos de inglês
Próximo:Spring Boot usa o Druid com a propriedade: erro spring.datasource.filters
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com