我正在尝试将我的程序连接到我们的主服务器,但它不起作用。 当我登录时,发生错误,
Connection error:
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:
Cannot load connection class because of underlying exception:
'java.lang.NumberFormatException:For input string:"192.168.10.105"'.
这是我的代码,在我的课程中,我将它连接到我们服务器的数据库:
package login;
import java.sql.*;
import javax.swing.JOptionPane;
public class DatabaseCls {
public Connection con;
private void conData() {
try {
String host = "jdbc:mysql://ipAddress:192.168.10.105/eqod-log";
String uName = "localhost";
String uPass= "eq0d.c0m";
con = DriverManager.getConnection(host, uName, uPass);
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, e, "Connection Error", JOptionPane.ERROR_MESSAGE);
}
}
public ResultSet rsFetch(String query) {
ResultSet rs = null;
try {
conData();
rs = con.createStatement().executeQuery(query);
return rs;
}
catch(Exception e) {
JOptionPane.showMessageDialog(null, e, "ResultSet Query Error", JOptionPane.ERROR_MESSAGE);
return rs;
}
}
public boolean exSQL(String query) {
boolean done;
try {
done = true;
conData();
con.createStatement().execute(query);
con.close();
return done;
}
catch(Exception e) {
done = false;
JOptionPane.showMessageDialog(null, e, "Query Error", JOptionPane.ERROR_MESSAGE);
return done;
}
}
}
你能帮我解决这个问题,我只是使用java
答案 0 :(得分:2)
String host = "jdbc:mysql://192.168.10.105:3306/eqod-log"; //3306 is port
将此字符串用作连接URL。有关详细信息JDBC URL Format
答案 1 :(得分:1)
IP地址表示= 192.168.10.105
在:
后你必须提到服务器所在的端口号,默认情况下是3306,用实际的端口号更新端口号,然后尝试
更改此行
String host = "jdbc:mysql://192.168.10.105:3306/eqod-log";
答案 2 :(得分:0)
在此字符串中:
"jdbc:mysql://ipAddress:192.168.10.105/eqod-log"
在URL中,冒号(ipAddress)之前的部分应该是IP地址或主机名。这里解析器的东西是主机名“ipAddress”。冒号后面的部分应该是端口,因此是整数。因此,解析器尝试将“192.168.10.105”解析为整数,并且失败。
我认为您想要使用此网址:
"jdbc:mysql://192.168.10.105:1234/eqod-log"
1234是端口(通常是3306)。