Сообщение об ошибке (java.lang.StringIndexOutOfBoundsException) при попытке подключить базу данных оракула из виртуальной коробки к Java(Eclipse) с использованием JDBC
Я получаю это сообщение об ошибке "java.lang.StringIndexOutOfBoundsException: String index вне диапазона: 25978", когда я пытаюсь запустить следующие коды:
import java.sql.*;
public class test_conn {
public static void main(String[] args) {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
// Connection con = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:22:orcl1", "system", "oracle");
Connection con = DriverManager.getConnection(
"jdbc:oracle:thin:@(description=(address=(host=localhost)(protocol=tcp)(port=1521))(connect_data=(sid=orcl1)))",
"system", "oracle");
Statement st = con.createStatement();
String sql = "select * from student";
ResultSet rs = st.executeQuery(sql);
while (rs.next()) {
System.out.println(rs.getInt(1) + " " + rs.getString(2));
con.close();
}
} catch (Exception e) {
System.out.println(e);
}
}
}
Можете ли вы помочь мне решить эту проблему?
Ниже приведена полная трассировка стека, которую я вижу на своей консоли:
java.lang.StringIndexOutOfBoundsException: String index out of range:
25978
at java.lang.String.checkBounds(String.java:385)
at java.lang.String.<init>(String.java:324)
at oracle.net.ns.Packet.extractData(Packet.java:447)
at oracle.net.ns.RefusePacket.<init>(RefusePacket.java:70)
at
oracle.net.ns.NSProtocolStream.negotiateConnection(NSProtocolStream.j
ava:233)
at oracle.net.ns.NSProtocol.connect(NSProtocol.java:263)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1360)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:486)
at oracle.jdbc.driver.PhysicalConnection.<init>
(PhysicalConnection.java:715)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:385)
at
oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtensio
n.java:30)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:564)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at lecture.test_conn.main(test_conn.java:13)
Благодарю вас.