É só por curiosidade mesmo, afinal, fiz um
System.out.println(connection);
para ver qual era o objeto da conexão COM e SEM o
"?useTimeZone=true&serverTimeZone=UTC"
e o resultado foi o mesmo. Apenas não entendi para que serve...
É só por curiosidade mesmo, afinal, fiz um
System.out.println(connection);
para ver qual era o objeto da conexão COM e SEM o
"?useTimeZone=true&serverTimeZone=UTC"
e o resultado foi o mesmo. Apenas não entendi para que serve...
Olá Humberto, tudo bem?
Provavelmente você está usando MySQL, correto?
A depender da versão que você estiver usando, e também da forma como o servidor em que o banco está instalado está configurado, você precisa determinar claramente a qual TimeZone você está se referindo, e esses parâmetros useTimeZone e serverTimeZone servem justamente para isso, para informar que você vai informar um TimeZone e qual é.
Dependendo, sem esses parâmetros você pode tomar algum erro similar a:
Caused by: com.mysql.cj.core.exceptions.InvalidConnectionAttributeException: The server time zone value 'BRT' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-reference-configuration-properties.html
E, só para matar a curiosidade, esses parâmetros informados na URL de conexão não mudam o objeto criado, por isso você obteve o mesmo resultado através da saída do comando println
Abraços!
Show, Renato! Valeu pela informação!