처음에는 약간의 배경으로 jdk 1.6을 사용하고 있습니다. 필자는 Oracle 8i DB에 워드 테이블에 대한 간단한 코드가 들어있는 2 열 테이블을 가지고 있습니다. 이상한 인물은 없습니다. 두 열 모두 varchar입니다. 나는 다음 실행할 때 내 데스크탑 컴퓨터에서서블릿에서 Oracle 8i 테이블에 액세스 할 때 이상한 동작이 발생했습니다.
:
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 서버에 앉아 서블릿에서 똑같은 코드를 실행하면
(나는 테이블에 액세스하는 간단한 애플릿 서블릿 모델을 사용하고 있는데 애플릿에 대한 응답을 반환), crs.getString (int)은 다음과 같은 문자열을 반환합니다 : 0x53, 0x54, 0x4E 등등.
나는 이것이 무엇을 의미하는지 확신 할 수 없으며 도움을 주셔서 감사합니다. 문제를 해결하기 위해 어디서부터 시작해야할지 궁금합니다.
오라클 8i는 10 년이지만 완벽한 지원을 기대하지는 않습니다. – tuinstoel