Java 连接到端口1527上的服务器本地主机时出错,消息连接被拒绝
我正在创建一个java项目,我想使用derby数据库,我配置了数据库,创建了名为Java 连接到端口1527上的服务器本地主机时出错,消息连接被拒绝,java,derby,Java,Derby,我正在创建一个java项目,我想使用derby数据库,我配置了数据库,创建了名为/home/user/TestDB的数据库,创建了一个表user,在其中插入3到4个值,并编写一个代码从数据库中获取数据,但当我连接数据库时,我发现连接拒绝错误,我很有用 DB URL : jdbc:derby://localhost:1527/home/user/TestDB 错误日志: java.sql.SQLNonTransientConnectionException: java.net.ConnectE
/home/user/TestDB
的数据库,创建了一个表user
,在其中插入3到4个值,并编写一个代码从数据库中获取数据,但当我连接数据库时,我发现连接拒绝错误,我很有用
DB URL : jdbc:derby://localhost:1527/home/user/TestDB
错误日志:
java.sql.SQLNonTransientConnectionException: java.net.ConnectException : Error connecting to server localhost on port 1527 with message Connection refused.
at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source)
at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source)
at org.apache.derby.jdbc.ClientDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:208)
at test.derby.util.DerbyUtil.getConnecation(DerbyUtil.java:34)
at test.derby.dao.TestDAO.getData(TestDAO.java:20)
at test.derby.dao.TestDAO.main(TestDAO.java:39)
Caused by: org.apache.derby.client.am.DisconnectException: java.net.ConnectException : Error connecting to server localhost on port 1527 with message Connection refused.
at org.apache.derby.client.net.NetAgent.<init>(Unknown Source)
at org.apache.derby.client.net.NetConnection.newAgent_(Unknown Source)
at org.apache.derby.client.am.Connection.<init>(Unknown Source)
at org.apache.derby.client.net.NetConnection.<init>(Unknown Source)
at org.apache.derby.client.net.NetConnection40.<init>(Unknown Source)
at org.apache.derby.client.net.ClientJDBCObjectFactoryImpl40.newNetConnection(Unknown Source)
... 6 more
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
java.sql.SQLNonTransientConnectionException:java.net.ConnectException:连接到端口1527上的服务器本地主机时出错,消息连接被拒绝。
位于org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(未知源)
位于org.apache.derby.client.am.SqlException.getSQLException(未知源)
位于org.apache.derby.jdbc.ClientDriver.connect(未知源)
位于java.sql.DriverManager.getConnection(DriverManager.java:664)
位于java.sql.DriverManager.getConnection(DriverManager.java:208)
位于test.derby.util.DerbyUtil.getConneAction(DerbyUtil.java:34)
位于test.derby.dao.TestDAO.getData(TestDAO.java:20)
位于test.derby.dao.TestDAO.main(TestDAO.java:39)
原因:org.apache.derby.client.am.DisconnectException:java.net.ConnectException:连接到端口1527上的服务器本地主机时出错,消息连接被拒绝。
位于org.apache.derby.client.net.NetAgent。(来源未知)
位于org.apache.derby.client.net.NetConnection.newAgent(未知源)
位于org.apache.derby.client.am.Connection。(未知源)
位于org.apache.derby.client.net.NetConnection。(来源未知)
位于org.apache.derby.client.net.NetConnection40。(未知来源)
位于org.apache.derby.client.net.ClientJDBCObjectFactoryImpl40.newNetConnection(未知源)
... 还有6个
原因:java.net.ConnectException:连接被拒绝
位于java.net.PlainSocketImpl.socketConnect(本机方法)
我认为您没有在使用的特定端口启动derver服务器。您需要在具有默认端口的本地主机上使用以下命令启动服务器1527
startNetworkServer -h 0.0.0.0
如果要更改端口,可以使用以下命令:
startNetworkServer -p 3301 // new port number
有关更多信息,请参阅下面的链接
发生此错误可能是因为以下原因:
1) 主机端口组合不允许使用防火墙
2) 客户端和服务器,其中一个或两个不在网络中
3) 服务器正在运行但未侦听端口,客户端正在尝试连接
4) 服务器未运行
5) 连接字符串中的协议不正确发生此错误只是因为数据库未连接
NETBEANS
转到服务>数据库>Java DB>(右键单击)
之后,只需右键单击数据库并连接数据库。最佳解决方案
执行数据库程序
第1步:
首先需要启动数据库服务器
打开一个命令shell并更改为保存数据库的目录
文件(在下面的示例中,数据库将存储在
D:\java2019\数据库)
D:\java2019\Database>“C:\Program Files\Java\jdk1.8.0\U 60\db\bin\startNetworkServer”
3月13日星期三10:36:36 IST 2019:使用基本服务器安全策略安装Security manager。
2019年3月13日星期三10:36:37:ApacheDerby网络服务器-10.11.1.2-(1629631)已启动并准备接受端口1527上的连接
默认端口号为1527我们还可以通过以下方式更改端口号
指令
D:\java2019\Database>“C:\Program Files\Java\jdk1.8.0\U 60\db\bin\startNetworkServer”-p 1567
2019年3月13日星期三10:46:33:使用基本服务器安全策略安装安全管理器。
2019年3月13日星期三10:46:33:Apache Derby网络服务器-10.11.1.2-(1629631)已启动并准备接受端口1567上的连接
第二步:
编译并执行java程序
打开另一个命令shell并更改为保存数据库文件的目录
set classpath=“;C:\Program Files\Java\jdk1.8.0\u 66\db\lib\derbyrun.jar”
第三步:
最后,需要停止数据库服务器
打开另一个命令shell并更改
D:\java2019\Database>“C:\Program Files\Java\jdk1.8.0\U 60\db\bin\stopNetworkServer”
2019年3月13日星期三10:56:04 IST:Apache Derby网络服务器-10.11.1.2-(1629631)关闭在端口1527上的本地主机上没有侦听任何内容。