我發佈了很多研究和谷歌的東西后我的問題。無法將我的Java應用程序連接到我的oracle 11g
我有一個的Oracle 11g 11.1.0.6.0是安裝在我的筆記本電腦 所有我試圖做的是我的Java應用程序連接到數據庫
我正在歌廳此異常: 的java.sql .SQLRecoverableException:IO錯誤:網絡適配器無法建立連接。
,我使用連接代碼:
Connection con=null ;
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("The driver has been loaded");
con=DriverManager.getConnection("jdbc:oracle:thin:@AMRO-PC:1521:XE", "aa" , "aa");
System.out.println("Connection was established");
}
catch (Exception e)
{
System.out.println(e.toString());
}//catch
我的tnsnames.ora是這樣
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = Amro-PC)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
完整堆棧跟蹤:
java.sql.SQLRecoverableException: IO Error: 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(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at Main.main(Main.java:31)
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)
... 7 more
Caused by: java.net.UnknownHostException: //localhost
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(Unknown Source)
at java.net.InetAddress.getAddressesFromNameService(Unknown Source)
at java.net.InetAddress.getAllByName0(Unknown Source)
at java.net.InetAddress.getAllByName(Unknown Source)
at java.net.InetAddress.getAllByName(Unknown Source)
at oracle.net.nt.TcpNTAdapter.connect(TcpNTAdapter.java:117)
at oracle.net.nt.ConnOption.connect(ConnOption.java:133)
at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:370)
... 12 more
的listener.ora中
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = D:\oracle\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = Amro-PC)(PORT = 1521))
)
)
DEFAULT_SERVICE_LISTENER = (XE)
那麼請有人可以幫助我嗎?! 在此先感謝
不推薦使用'oracle.jdbc.driver.OracleDriver';你應該使用'oracle.jdbc.OracleDriver'。 – Paul 2012-02-07 20:17:02
相同的東西 和所有在互聯網上的教程都使用oracle.jdbc.driver.OracleDriver – 2012-02-07 20:28:25
粘貼您的listener.ora和/或lsnrctl服務輸出。你使用service_name但是你想使用SID – iddqd 2012-02-07 20:51:58