我是在Eclipse中撰寫連接資料庫的代碼的,資料庫連接地址是這樣的:
String url="jdbc:oracle:thin:@localhost:1521:orcl";
大部分時間連接資料庫是正常的,但是有時候在電腦有更新,或者感覺長時間不關電腦后,再次連接就有可能會出現如下錯誤:
java.sql.SQLRecoverableException: IO 錯誤: The Network Adapter could not establish the connection
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:458)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:546)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:236)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
at edu.seu.database.drivers.DatabaseConnection.<init>(DatabaseConnection.java:35)
at edu.seu.database.drivers.DatabaseTableSelector.getDBGroupMember(DatabaseTableSelector.java:97)
at edu.seu.database.drivers.DatabaseTableSelector.getData(DatabaseTableSelector.java:42)
at edu.seu.lizhenglong.mylabperspective.MyLabPerspectiveTopComponent$MySwingWorker.doInBackground(MyLabPerspectiveTopComponent.java:239)
at edu.seu.lizhenglong.mylabperspective.MyLabPerspectiveTopComponent$MySwingWorker.doInBackground(MyLabPerspectiveTopComponent.java:231)
at javax.swing.SwingWorker$1.call(SwingWorker.java:296)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at javax.swing.SwingWorker.run(SwingWorker.java:335)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: oracle.net.ns.NetException: The Network Adapter could not establish the connection
at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:392)
at oracle.net.resolver.AddrResolution.resolveAndExecute(AddrResolution.java:434)
at oracle.net.ns.NSProtocol.establishConnection(NSProtocol.java:687)
at oracle.net.ns.NSProtocol.connect(NSProtocol.java:247)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1102)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:320)
... 17 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at oracle.net.nt.TcpNTAdapter.connect(TcpNTAdapter.java:150)
at oracle.net.nt.ConnOption.connect(ConnOption.java:133)
at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:370)
... 22 more
這時候,用其他軟體或者oracle 資料庫自帶的SQL PLUS都能正常登陸資料庫,但是用代碼卻怎么也連接不上。
若選擇重啟電腦,則又能正常連接上資料庫了。
不知道出現這種情況是因為什么原因?
uj5u.com熱心網友回復:
你嘗試一下,把網卡禁用了,再啟用,看看能不能解決;uj5u.com熱心網友回復:
檢查網路、還有系統防火墻uj5u.com熱心網友回復:
首先ping是否能ping通,如果能ping通,然后再檢查一下網路,后不行再檢查系統防火墻uj5u.com熱心網友回復:
匯入jar包了嗎?uj5u.com熱心網友回復:
監聽重啟了嗎轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/22908.html
標籤:開發
下一篇:linux 安裝 Redis
