我正在尝试使用 JDBC 驱动程序在一些 Java 和 SQL Server 之间创建连接。我创建了一个 Connection 类,它应该与我的计算机上的服务器建立连接,例如 IP 地址为“BHX”
这是连接类
public class Connection {
public static void main(String[] args) throws Exception {
try {
String databaseDriver = "net.sourceforge.jtds.jdbc.Driver";
Class.forName(databaseDriver);
} catch (Exception e) {
e.printStackTrace();
}
try {
String url = "jdbc:jtds:sqlserver://BHX:1433/Forecast;instance=SQLEXPRESS";
java.sql.Connection con = DriverManager.getConnection(url);
System.out.println("Connection created");
con.close();
} catch (Exception e1) {
e1.printStackTrace();
}
}
}
我想知道 url 字符串是否有任何问题,因为当我运行此代码时,我收到以下错误:
java.sql.SQLException: Network error IOException: Connection refused: connect
at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java:417)
at net.sourceforge.jtds.jdbc.ConnectionJDBC3.<init>(ConnectionJDBC3.java:50)
at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:185)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at Connection.main(Connection.java:56)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.sourceforge.jtds.jdbc.SharedSocket.createSocketForJDBC3(SharedSocket.java:311)
at net.sourceforge.jtds.jdbc.SharedSocket.<init>(SharedSocket.java:261)
at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java:318)
... 5 more
我已经看到了类似的问题(比如这里),但看起来我已经遵循了所有可能的解决方案。我检查了配置管理器中启用了 TCP/IP,并且端口号是 1433。
我试过在禁用防火墙的情况下运行它,但仍然出现相同的错误。
telnet BHX 1433 并且我收到以下消息“...无法在端口 1433 上打开与主机的连接:连接失败”