Problemas JDBC

Boa noite a todos,

Estou fazendo uma classe para testar uma conexão em mysql.
Criei uma classe com a minha fábrica de conexões que é a ConnectionFactory e criei uma classe para testar as conexões.
Configurei o .jar do mysql no build path.
Mas quando vou testar a conexão esta dando o seguinte erro: Caused by: java.sql.SQLException: Access denied for user ‘root’@‘localhost’ (using password: NO)

Vou exibir o stack trace para ver se ajuda.

Conectando ao Banco
Exception in thread "main" java.lang.RuntimeException: java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: NO)
	at br.com.caelum.jdbc.ConnectionFactory.getConnection(ConnectionFactory.java:15)
	at br.com.caelum.jdbc.dao.ContatoDAO.<init>(ContatoDAO.java:16)
	at br.com.caelum.teste.TestaInsere.main(TestaInsere.java:19)
Caused by: java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: NO)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3515)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3447)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:911)
	at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3953)
	at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1276)
	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2048)
	at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:723)
	at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
	at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:302)
	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
	at java.sql.DriverManager.getConnection(Unknown Source)
	at java.sql.DriverManager.getConnection(Unknown Source)
	at br.com.caelum.jdbc.ConnectionFactory.getConnection(ConnectionFactory.java:13)
	... 2 more

Agradeço desde já,

Vitor Bonfim

Uma vez eu tive este mesmo problema de exceção. No meu caso, havia uma senha para o root no MySQL que eu tinha esquecido de passar pelo Java.

Veja se não é isso.

Vou tentar passar essa senha.

Obrigado!

Erick,

Infelimente continua dando erro.
Agora o erro é esse: Exception in thread “main” java.lang.RuntimeException: java.sql.SQLException: Access denied for user ‘root’@‘localhost’ (using password: YES)
Ele só mudou o parâmetro password para “YES”.

Tem que ver se a senha que está sendo passada para o usuário root está correta.

Se você tentar conectar com o MySQL direto pelo terminal/prompt como root e esta senha, dá certo?

Eric,

Agora funcionou!!!
Obrigado pela ajuda, foi o problema da senha mesmo, eu estava passando a senha errado.

Abraços