高分求解,急!!!Java连接Oracle10g 问题 java.sql.SQLException: 无法从套接字读取更多的数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高分求解,急!!!Java连接Oracle10g 问题 java.sql.SQLException: 无法从套接字读取更多的数据相关的知识,希望对你有一定的参考价值。

Oracle在Linux服务器上,开发环境是windows XP,试过升级jdbc的jar,无效,已经头疼到想杀人了,郁闷死了。
下面是程序代码:
/** Oracle数据库连接URL */
private final static String Oracle_URL = "jdbc:oracle:thin:@192.168.1.4:1521:orcl";
/** Oracle数据库连接驱动 */
private final static String Oracle_DRIVER = "oracle.jdbc.driver.OracleDriver";
/** 数据库用户名 */
private final static String Oracle_USERNAME = "map";
/** 数据库密码 */
private final static String Oracle_PASSWORD = "admin";

public static void main(String[] args) throws SQLException

try
Class.forName(Oracle_DRIVER);
Connection conn = DriverManager.getConnection(Oracle_URL,
Oracle_USERNAME, Oracle_PASSWORD);
System.out.println("good");
catch (Exception e)
System.out.println("连接失败!");
e.printStackTrace();


下面是错误信息
java.sql.SQLException: 无法从套接字读取更多的数据
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:207)
at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1117)
at oracle.jdbc.driver.T4CMAREngine.unmarshalSB1(T4CMAREngine.java:1069)
at oracle.jdbc.driver.T4C8TTIpro.receive(T4C8TTIpro.java:130)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:866)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:267)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:413)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:164)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:34)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:752)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at Oracletest3.main(Oracletest3.java:18)

这个问题很诡异的。
首先,确保你所用的oracle驱动(ojdbc14.jar)与Oracle服务器的版本一致。
并确保开发环境能够访问到数据库服务器(不会被防火墙拦住,必要时关了防火墙试试)。

还有问题的话,得查Oracle服务器上的日志了,如alert_SID.log,请你们的DBA帮忙看看。
网上也有说是游标不足的原因:
SELECT v.name, v.value value FROM V$PARAMETER v WHERE name = 'open_cursors'
如果value小于300 就用下面的语句增大就行
alter system set open_cursors = 10000

代码应该没有问题,主要得查数据库那边了。
参考技术A 检查一下jar包是否导入,数据库名,用户名和密码是否正确
这个代码我运行是正确的。本回答被提问者采纳
参考技术B 1 先看看Linux服务器上的oracle的服务开了没?正常需要两个服务 一个是listener的监听服务 另一个是你的叫做orcl的实例服务(用plsql先测试可以访问不)

2 证明上述正常了,再确认java需要的oracle的驱动jar包是不是全放进去了,而且是被配置到路径里了

3 进一步确认你上面的用户名密码的正确与否

按照这个来应该可以测出问题在哪 细心点 加油
参考技术C 在十八行出了错!你看下odbc里连接了没, 参考技术D 你导入orcale 的驱动了吗??

Eclipse导出jar,无法运行,在线高分急等。

我连接了sql2000的数据库,在eclipse里一点事情也没有,但是导出后就不能运行了,郁闷死我了,如果可以解决这个问题,我就给可以给的最高分。
普通的导出我会,只是连上数据库后,导出来的产品不能了连接数据库。

用fatjar打包或者运行的时候加入classpath 你直接打包的话第三方类库找不到 参考技术A 好歹要让我们知道一下链接不上数据库的现象是什么吧?有异常吗? 参考技术B 看下你在Eclipse里面导入的数据库驱动。 参考技术C 能双击运行的jar文件必须是图形界面的 参考技术D 用DRM解锁就ok了

以上是关于高分求解,急!!!Java连接Oracle10g 问题 java.sql.SQLException: 无法从套接字读取更多的数据的主要内容,如果未能解决你的问题,请参考以下文章

Eclipse导出jar,无法运行,在线高分急等。

连接 Oracle 10g Express Edition 和 Java

高分求救:win7下安装oracle出错!!

急急急!!高分悬赏,windows 2008远程桌面连接问题

myeclipse6.0 连接oracle10g的问题 ORA-00604,ORA-12705

myeclipse连接oracle 10g时,发生Locale not recognized异常