最近,使用layui做一個導出功能,盡管有插件提供導出,但是呢,由於數據中有狀態是數字,例如1顯示是已支付,但是導出時也希望這樣顯示,但是導出的還是1;
lz沒有找到改下這個插件的辦法,只能利用服務端生成,再響應客戶端,進行下載Excel文件。
由於系統采用的是ajax方法傳輸參數,無法以以往方法通過流響應即可。
一般常用的文件下載方式:
1 post請求,使用form標簽進行提交,服務端已流輸出,即可下載文件;適用於數據量不大場景;
2 ajax post請求,采用緩存,將生成的文件存放,成功后采用location.href;此方法后處,遇到大文件,圖片場景,可以使服務端性能提高;
3 ajax post請求,將生成的文件存放服務端路徑,成功后采用location.href;跟第二種大同小異。。
似乎跑題了,前台js封裝json數據,
var res={"merchantNo": merchantNo,"startTime":startTime,"endTime":endTime,"bills":bills};
bills是一個數組;
后台controller接收;


還有另外一種方式接收。。

將其寫成一個 類,然后就可以更快的進行處理。
獲取json集合
JSONObject jsonObject = JSONObject.parseObject(res);
JSONArray jsonArray = (JSONArray)jsonObject.get("bills");
List<BillVo> bills = (List<BillVo>)JSONArray.parseArray(jsonArray.toString(), BillVo.class);
