oracle AL32UTF8字符集,java读取数据库返回的数据都是问号?
oracle是AL32UTF8字符集,我建立一个ejb项目,在main函数中读取数据表,然后将返回的数据输出到控制台,但是中文都是问号,这应该是字符集转换的,但是如何转换,试了好多转换,都是还是问号,请高人帮忙解决一下!测试两种链接但是都不还是同样的问题.此项目的编码也是设置为了utf8,默认是GBK。
一下是main函数代码:
int oracleId = CharacterSet.AL32UTF8_CHARSET;
//CharacterSet dbCharset = CharacterSet.make(oracleId);
CharacterSet myCharSet = CharacterSet.make(CharacterSet.UTF8_CHARSET);
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
// Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@122.1.1.3:1521:utf8", "utf8", "utf8");
Connection conn = DriverManager.getConnection("jdbc:oracle:oci8:@utf8", "utf8", "utf8");
Statement stmt = conn.createStatement();
// get data from db
ResultSet rs = stmt.executeQuery("SELECT * FROM TBL2");
String szOut;
String szTemp;
while (rs.next()) {
oracle.sql.CHAR out_value = new oracle.sql.CHAR(rs.getString("COL2"), myCharSet);
String firstNameString = out_value.stringValue();
}
rs.close();
stmt.close();
conn.close();