Hvis længden af CLOB er lille nok ( <Integer.MAX_VALUE
) kan du gøre følgende :
clob.getSubString(1, (int) clob.length());
(Kig bare på dette spørgsmål )
REDIGERING:
Den kode, du indsendte i dit spørgsmål, skulle blive:
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);
Bemærk venligst, at løkken i din originale kode var absolut ubrugelig, så jeg fjernede den.
Tjek også det result[1]
er en java.sql.Clob