訂單等數據導出爲Csv文件注意事項

Problem1.訂單等數據導出,大多需要牽扯到多張表聯表查詢,訂單等表,大多數據量較大,聯表查詢將佔用大量服務器資源:
1:導出數據避免項目間服務調用(dubbo),負責導出的項目應具有所有項目數據源
2:導出接口應儘量精簡,避免出現繁重的冗餘接口
3:如果用戶導出操作比較頻繁,可通過建立臨時表等方式,在用戶訪問量不大的情況下做待導出數據準備
4:延遲,異步導出,結合用戶導出需求,可每天提交導出需求,告知用戶只在每天的某個時間處理用戶導出數據請求
5:對導出量和導出時間跨度做限制
6:絕對禁止for循環裏調用接口查詢裝配數據
Problem2.數據導出到csv文件中,用excel打開後,部分數字或者字符錯位等問題
1:訂單號等字段,即使你用的是String,可是到Excel中依然還是變了(如變成科學計數法啊什麼的,訂單號一般比較長,它還會把後面幾位全部變成0),加上這句話就好啦~
StringEscapeUtils.escapeCsv(“\t”+record.getOrderNo()))
2:如果導出的字段,如用戶備註什麼的,有可能有一些特殊字符,如逗號等,在寫入csv文件時會被解析,然後就一陣錯亂….咋辦?把導出內容加上雙引號就好啦~加上雙引號之後就可以防止內容中的特殊字符被解析啦~~~

發佈了25 篇原創文章 · 獲贊 64 · 訪問量 26萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章