Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Acess denied for user ''@'localhost'

O código abaixo funciona normalmente...

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class TestaConexao {

    public static void main(String[] args) throws SQLException {        

        Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/loja_virtual?useTimezone=true&serverTimezone=UTC", "root", "senha da instalacao mysql");

        Statement stm = connection.createStatement();
        boolean resultado = stm.execute("SELECT ID, NOME, DESCRICAO FROM PRODUTO");


        ResultSet rst = stm.getResultSet();

        while (rst.next()) {
            Integer id = rst.getInt("id");
            String nome = rst.getString("nome");
            String descricao = rst.getString("descricao");
            System.out.println("id " + id + " nome " + nome + " descrição " + descricao);

        }

        connection.close();
    }

}

Esse outro não funciona

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class TestaListagem {

    public static void main(String[] args) throws SQLException {

        Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/loja_virtual?useTimezone=true&serverTimezone=UTC", "root", "senha da instalacao mysql");

        connection.close();

    }

}

Eu tenho essas duas classes no mesmo projeto, inicialmente criei a classe só de conexão, por engano peguei o DriverManager.getConnection(url); Como mudavam apenas os parametros, eu fui lá e inseri manualmente o conteúdo "jdbc:mysql://localhost/loja_virtual?useTimezone=true&serverTimezone=UTC", "root", "senha da instalacao mysql" não funcionou... Apaguei o comando e usai o eclipse para escolher o DriverManager.getConnection(url, user, password); substituí o conetúdo dos parênteses por "jdbc:mysql://localhost/loja_virtual?useTimezone=true&serverTimezone=UTC", "root", "senha da instalacao mysql" e advinhem só funcionou!! Vai entender.

O professor disse pra criarmos a classe TestaListagem e copiar o Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/loja_virtual?useTimezone=true&serverTimezone=UTC", "root", "senha da instalacao mysql"); só que aí não funcionou!!!!!! Foi só CTRL + C e CTRL +V em outra classe do mesmo projeto e NÃO FUNCIONOU!

Tentei usar a solução da primeira classe e continuou não funcionando.....

Joguei o código do while na primeira classe e listou certinho na segunda ele nem conecta e a linha de comando da conexão é igual. Agora vejam a mensagem de erro Exception in thread "main" java.sql.SQLException: Access denied for user ' '@'localhost' (using password: NO)

por algum motivo o comando não passa o nome de usuário e a senha... e veja o comando novamenteConnection connection = DriverManager.getConnection("jdbc:mysql://localhost/loja_virtual?useTimezone=true&serverTimezone=UTC", "root", "senha da instalacao mysql")`

1 resposta
solução!

resolvido eu expliquei no topico de outro colega logo abaixo mas vejam as imagensInsira aqui a descrição dessa imagem para ajudar na acessibilidade

minha clase não se chama TimezoneDump ......

veja a solução Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software