java与mysql的连接

dm7nw8vv  于 2021-06-19  发布在  Mysql
关注(0)|答案(2)|浏览(258)

我正在尝试在java和我的数据库之间建立连接。我正在使用eclipse和xampp。我几乎确信我有很好的eclipse和xampp配置,但也许我遗漏了一些东西。我在网上搜索了很多,但没有找到解决办法。
我的错误是:
sqlexception:无法创建到数据库服务器的连接。尝试重新连接3次。放弃。sqlstate:08001供应商错误:0
xampp-xampp配置
我在工作区文件夹中有jar文件。eclipse配置
phpmyadmin-我不需要密码就可以登录localhost/phpmyadmin,而且我在db中只有一条记录。
代码

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();
   }
  }
}
wmomyfyw

wmomyfyw1#

我可以使用cmd查看我的数据库:
c:\xampp\mysql\bin>mysql-u根-p
进入
显示数据库;然后我可以看到本地主机上的所有数据库。当我选择英雄时,我可以从英雄中选择;
图片:数据库命令

kmynzznz

kmynzznz2#

请验证用户名和密码是否正确。
我需要完整的堆栈跟踪:

wyjatek.printStackTrace();

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

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

如果我没记错,使用默认的xampp配置,您可以尝试以下操作:
用户:root
密码:[空白]

static String login = "root";
static String password = "";

相关问题