處理oracle 大字串型別(CLOB)讀取
阿新 • • 發佈:2022-12-10
在資料庫讀取clob型別 返回的list中 如果資料超大 會報錯,例如型別超4000 ,或Long型別只能繫結Long型別的值(大概意思如此)
這時需要單獨處理下clob型別的資料即可(需要注意,clob是從磁碟IO中讀取,效率很慢,能躲儘量躲)
//從資料庫中獲取包含clob型別的list
List<Map> resultList = dao.getList();
//單獨處理list型別 for(Map<String, Object> data:resultList){ for(String key:data.keySet()){if(data.get(key) instanceof Clob){ Clob clob = (Clob) data.get(key); try { data.put(key, clob.getSubString((long)1,(int)clob.length())); } catch (SQLException e) { // TODO Auto-generated catch blocke.printStackTrace(); } } } }
return resultList;