如何保留从 java 中的 varchar 值中提取的 chinese/korean 个字符

How to retain chinese/korean characters fetched from varchar value in java

我正在使用 String 变量存储 ResultSet 中的 varchar 值。问题是当我在我的应用程序中保存这个值时。它不显示 Chinese/Korean 个字符。我确信问题不在于我的应用程序中的渲染,因为我能够使用相同的代码从 Clob 对象查看这些字符。获取 varchar 以保留 unicode 字符的首选方法是什么?下面是一个小片段,可以很容易地解释这个问题。

Result resultSet = statment.getResultSet();
while(resultSet.hasNext(){
String userName = commentRS.getString(3);
}

如果您认为在从数据库的 CLOB 到 Java 的 String 的编码转换过程中出现问题,那么您可以尝试使用此代码来避免它:

String userName = new String(commentRS.getBytes(3), "UTF-8");

想法是从数据库中获取纯字节流,然后创建一个具有所需编码的字符串。