[RESOLVIDO] JDBC - Parâmetros na String de conexão

Pessoal, bom dia.

Tenho a seguinte string de conexão

private static final String URL = "jdbc:mysql://localhost/db_ceos_v2?useSSL=false?zeroDateTimeBehavior=convertToNull";

Funciona dessa forma

private static final String URL = "jdbc:mysql://localhost/db_ceos_v2?useSSL=false";

Quando eu adiciono um segundo parâmetro, ?zeroDateTimeBehavior=convertToNull";, já começa o erro, qual seria o delimitador para adicionar um segundo parametro na string de conexão, já tentei separado por ; seguindo alguns exemplos que encontrei, porém não funcionou.

jdbc:mysql://yourserver:3306/yourdatabase?useSSL=false?zeroDateTimeBehavior=convertToNull

Já tentou colocar a porta?


Qual seria o exception?

Bom dia, obrigado pelo retorno.

Fiz da seguinte forma:

private static final String URL = "jdbc:mysql://localhost:3306/db_ceos_v2?useSSL=false?zeroDateTimeBehavior=convertToNull;

A Exception é

driver.java.sql.SQLException: The connection property 'useSSL' only accepts values of the form: 'true', 'false', 'yes' or 'no'. The value 'false?zeroDateTimeBehavior=convertToNull' is not in this set.

A parte dos parâmetros da URI está errada. A interrogação você só usa para começar a seção de parâmetros. Para separar os parâmetros entre si, você usa o ampersand. O certo seria:

jdbc:mysql://localhost/db_ceos_v2?useSSL=false&zeroDateTimeBehavior=convertToNull

A documentação da classe URI mostra exatamente como funciona uma URI.

2 curtidas

Muito obrigado pela informação, não passou pela minha cabeça em procurar na documentação, e mesmo se passasse eu não sabia como procurar, obrigado pela ajuda, vou tomar o cuidado de procurar na documentação antes de fazer um tópico novo.

1 curtida