CLOB の長さが十分に小さい場合 ( <Integer.MAX_VALUE
) 次のことができます:
clob.getSubString(1, (int) clob.length());
プレ>( この質問 )
編集:
質問で送信したコードは次のようになります:
String sql = "select id, data from mytable"; List< Object[] > results = getEntityManager().createNativeQuery(sql).getResultList(); Map< Long, String > map = new HashMap<>(); Clob clob = (Clob)result[1]; String value = clob.getSubString(1, (int) clob.length()); map.put(((Number) result[0]).longValue(), value);
プレ>元のコードのループはまったく役に立たないので、削除したことに注意してください。
result[1]
も確認してくださいjava.sql.Clob
です