Я отправляю свой вопрос после многих исследований и многого.Cant Подключить мое приложение к Java к моему оракулу 11g
у меня есть Oracle 11g 11.1.0.6.0, установленные на моем ноутбуке все, что я пытаюсь сделать, это подключить Java приложение к базе данных
я адресность этого исключения: java.sql .SQLRecoverableException: ошибка ввода-вывода: сетевой адаптер не смог установить соединение.
код, который я использую для подключения:
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)
)
)
полный StackTrace:
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
то же самое , и все учебные пособия по всему Интернету используют oracle.jdbc.driver.OracleDriver –
Вставьте свой список услуг listenener.ora и/или lsnrctl. Вы используете служебное имя, но вы хотите использовать SID – iddqd