記錄最近遇到的坑
從oracle中擷取到null如何轉成空字元串
需求:

擷取List集合中所有資料,并将null值轉化為’’(空字元串)。(這裡的null值被自動過濾,不顯示)
1.我想可以通過hql語句來将null替換成空字元串,
用nvl(列名,’’);進行替換。發現結果依然是null。
用nvl(列名,‘0’);做測試,可以替換成’0’;查閱資料發現,oracle對于null和’‘的定義是一樣的。輸入’’,擷取到的結果會被oracle自動編譯成null。
開始換思路。
2.通過擷取list集合中的object對象
代碼如下:
List reList = new ArrayList();
//擷取所有值
List queryList = em.createNativeQuery(searchSQL.toString()).getResultList();
//将null轉換為 ""
for(Object qu : queryList){
//擷取queryList的值,轉化為數組
Object[] que = (Object[]) qu;
for(int i =0;i<que.length;i++){
//将周遊數組的所有值轉化為字元串格式(包括null)
String obj = que[i]+"";
if(obj.equals("null")){
obj="";
}
reList.add(obj);
}
}
最後将reList 傳回即可