除了能夠使用JSP這種常用的頁面呈現外, Spring MVO還整合了其他常用數據格式的頁面展現,比如 Excels數據。在呈現 Excel視圖時, Spring并沒有開發自己的Exce實現方案,而是使用已有的 JJava Exce解決方案來生成Exce件,然后通過與MvC框架的整合,把生成的Excel文件輸出到HTTP的Response中,在HTTP的客戶端展現出來。Spring3.0分別提供了POI和 JEXCelAPI兩個方案在MVC框架中的整合,它們的使用分別對應兩個view類:Abstract ExcelView和 AbstractJExcelView。在這里,以PO的實現為例,對在 Spring Mvc中展示Excl視圖的實現原理做一個簡要的分析。
在 AbstractExcel view中, Excel視圖的呈現是通過POI來完成的,可以看到,POI的對象 HSSFWorkbook用來在PO中抽象 Excel-文件的對象。這個工作簿可以從模板 Excely件里取得,模板 Excel-件可以通過URL來指定,也可以通過 HSSFWorkbook對象生成一個新的 Excel文件。在得到代表 Excel件的 HSSFWorkbook對象以后,就是通過這個對象對Exc件中的數據進行處理。這些文件的數據處理沒有在 AbstractExcel viewl中實現,而是交給應用去完成的,這里為該實現定義了一個抽象方法 buildExcelDocument,應用需要實現該抽象方法,以完成自己的數據操作。完成Exce的數據操作后, Excel文件就已經準備好了,下面介紹把它輸出到HTP客戶端的過程。首先需要設置HTTP響應的輸出類型,以便客戶端進行識別。完成設置后,把HSSFWorkbook對象代表的數據輸出到HTTP響應中,這樣就完成了在服務器端的Exce視圖呈現過程。
咨詢熱線
010-85377344
135-21581588
微信客服
QQ客服
3026106565 點擊咨詢