gpt4 book ai didi

mysql - 无法从 eclipse 创建到 MySQL 的连接

转载 作者:行者123 更新时间:2023-11-29 17:48:29 25 4
gpt4 key购买 nike

我尝试使用以下代码从 eclipse 连接到 MySQL。但是,当我尝试编译代码时,出现错误(如代码后所示)。请帮忙。我是新手。我尝试对其进行一些更改,但无法使其正常工作。谢谢!

      public static void main(String[] args) {

// creates three different Connection objects
Connection conn = null;
Connection conn2 = null;
Connection conn3 = null;

try {
// connect way #1
String user = "user";
String password = "pwd";

conn = DriverManager.getConnection ("jdbc:mysql://\" + host + \"/feedback?\" + \"user=\" + user + \"&password=\" + password+\"useSSL=false", "meher", "meher");
if (conn != null) {
System.out.println("Connected to the database test1");
}
} catch (SQLException ex) {
System.out.println("An error occurred. Maybe user/password is invalid");
ex.printStackTrace();
}
}

}

错误消息:

      >  An error occurred. Maybe user/password is invalid
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

>The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
>> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:990)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:342)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2188)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2221)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2016)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:776)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
`enter code here`sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:386)
at
com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:330)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at meher.main(meher.java:29)


> Caused by: java.net.UnknownHostException: " + host + "
>> at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:928)
at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1323)
at java.net.InetAddress.getAllByName0(InetAddress.java:1276)
at java.net.InetAddress.getAllByName(InetAddress.java:1192)
at java.net.InetAddress.getAllByName(InetAddress.java:1126)
at
com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:188)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:301)
... 15 more

非常感谢您的帮助。

最佳答案

这一行解释了原因

由以下原因引起:java.net.UnknownHostException: "+ host + "

问题出在 URL 字符串格式上,因为主机名实际上就是“引起的”所说的。

试试这个

String url = String.format("jdbc:mysql://%s/feedback?user=%s&password=%s&useSSL=false", user, password)
conn = DriverManager.getConnection (url, "meher", "meher");

关于mysql - 无法从 eclipse 创建到 MySQL 的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49604136/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com