繁体   English   中英

从Servlet访问Oracle 8i表时的奇怪行为

[英]Strange behaviour when accessing Oracle 8i table from servlet

首先介绍一下背景知识,我正在使用jdk 1.6。 我在Oracle 8i DB中有一个2列表,其中包含一个非常简单的代码到单词映射。 没有奇怪的人物。 两列都是varchar。

在我的台式机上,执行以下命令:

        OracleDataSource ods = new OracleDataSource();

        ods.setDriverType("thin");
        ods.setServerName("DBserver.db");
        ods.setDatabaseName("DB");
        ods.setPortNumber(1527);
        ods.setUser("user");
        ods.setPassword("password");

        Connection connection = ods.getConnection();
        Statement stmt = connection.createStatement();
        ResultSet res = stmt.executeQuery(SQL);

        CachedRowSet crs = new CachedRowSetImpl();
        crs.populate(res);
        while (crs.next()) {
            System.out.println("ID: " + crs.getString(1) +
                               ",  Name: " + crs.getString(2));
        }

一切正常,我得到了我期望的结果(getString(1)和getString(2)的返回值与表中存储的值完全相同)

然而:

当我在Tomcat服务器上的servlet中执行相同的代码时(我使用的是简单的applet servlet模型来访问表并返回对applet的响应),crs.getString(int)返回如下字符串:0x53, 0x54、0x4E等。

我不确定这意味着什么,将不胜感激。 我想知道从哪里开始解决问题。

Oracle 8i很老了。 我相信是1999或2000。您的jdk和Tomcat以及Oracle和JDBC的组合是否得到认证/支持?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM