繁体   English   中英

Java和MySql之间的连接

[英]Connection between Java and MySql

我正在尝试在Java和数据库之间建立连接。 我正在使用Eclipse和xampp。 我几乎确信我具有Eclipse和xampp的良好配置,但是也许我错过了一些东西。 我在Internet上进行了很多搜索,但没有找到解决方案。

我的错误是:

SQLException:无法创建与数据库服务器的连接。 尝试重新连接3次。 放弃。 SQLState:08001 VendorError:0

  1. Xampp- Xampp配置

  2. Eclipse-我的工作区文件夹中有jar文件。 Eclipse配置

  3. phpmyadmin-我不需要密码即可登录localhost / phpmyadmin,并且数据库中只有一条记录。

  4.  import java.sql.Statement; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; public class JDBC2 { static String daneZBazy; static String polaczenieURL = "jdbc:mysql://localhost:3306/heroes.db? autoReconnect=true&useSSL=false"; static String login = "root"; static String password = "root"; public static void main(String[] args) { // Question to DB String query = "Select * FROM heroestab"; Connection conn = null; try { // Connection parameters conn = DriverManager.getConnection(polaczenieURL, login, password); // MySQL Driver Class.forName("com.mysql.jdbc.Driver"); // Start question to DB Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(query); while (rs.next()) { wyswietlDaneZBazy(rs); } conn.close(); } //throws exception catch (ClassNotFoundException wyjatek) { System.out.println("Driver error"); } catch (SQLException wyjatek) { wyjatek.printStackTrace(); System.out.println("Login problem. Check, username, password, DB name, IP adress"); System.out.println("SQLException: " + wyjatek.getMessage()); System.out.println("SQLState: " + wyjatek.getSQLState()); System.out.println("VendorError: " + wyjatek.getErrorCode()); } } static void wyswietlDaneZBazy(ResultSet rs) { try { daneZBazy = rs.getString(1); System.out.println("\\n" + daneZBazy + " "); daneZBazy = rs.getString(2); System.out.println(daneZBazy + " "); daneZBazy = rs.getString(3); System.out.println(daneZBazy); } catch (SQLException e) { e.printStackTrace(); } } } 

请验证用户名和密码是否正确

我需要来自以下位置的完整堆栈跟踪:

 wyjatek.printStackTrace();

如果用户名(root)和密码不正确,您将在堆栈跟踪中看到以下行:

   Access denied for user 'root'@'localhost' (using password: YES)

如果我没记错的话,使用默认的xampp配置,可以尝试以下操作:

  • 用户:root
  • 密码:[空白]
 static String login = "root"; static String password = ""; 

我可以看到我的数据库使用cmd:

  1. C:\\ xampp \\ mysql \\ bin> mysql -u根-p
  2. 输入
  3. 显示数据库; 然后我可以看到我在本地主机上拥有的所有数据库。 当我选择英雄时,我可以从英雄中选择*;

图片: 数据库cmd

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM