摘要:第一行的行號(hào)是創(chuàng)建一個(gè)單元格,并為單元格設(shè)置值也可以在同一行代碼中做到構(gòu)建工作簿完成配置視圖解析器首先,在應(yīng)用程序上下文中配置一個(gè)注意到上面配置的指向一個(gè)文件。
??這個(gè)示例見這個(gè)項(xiàng)目的 mvc 分支下的 VestXlsViewController.java
1)首先創(chuàng)建一個(gè) Xls 視圖類package com.techmap.examples.view; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.log4j.Logger; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CreationHelper; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.util.WorkbookUtil; import org.springframework.web.servlet.view.document.AbstractXlsView; /** * 這里只處理 xls 格式的 Excel。 * * Spring 提供的其他相關(guān)支持見包 org.springframework.web.servlet.view.* * * 更多Xls文件操縱示例見 Apache POI 官方文檔 * * @author Angrynut * */ public class XlsView extends AbstractXlsView { private static Logger log = Logger.getLogger(XlsView.class); @Override protected void buildExcelDocument(Map2)配置視圖解析器model, Workbook workbook, HttpServletRequest request, HttpServletResponse response) throws Exception { log.debug("------> 開始構(gòu)建 xls 工作簿"); // 你可以通過請(qǐng)求來處理請(qǐng)求參數(shù) CreationHelper createHelper = workbook.getCreationHelper(); if(workbook.getNumberOfSheets() == 0) { String safeName = WorkbookUtil.createSafeSheetName("Spring Sheet"); Sheet sheet = workbook.createSheet(safeName); // 創(chuàng)建一個(gè)行,把單元格放到行中。第一行的行號(hào)是 0 Row row = sheet.createRow((short) 0); // 創(chuàng)建一個(gè)單元格,并為單元格設(shè)置值 Cell cell = row.createCell(0); cell.setCellValue(1); // 也可以在同一行代碼中做到 row.createCell(1).setCellValue(1.2); row.createCell(2).setCellValue( createHelper.createRichTextString("This is a string")); row.createCell(3).setCellValue(true); } log.debug("------> 構(gòu)建 xls 工作簿完成"); } }
??首先,在應(yīng)用程序上下文中配置一個(gè)XmlViewResolver:
??注意到上面配置的XmlViewResolver指向一個(gè)mvc-views.xml文件。這個(gè)mvc-views.xml文件是一個(gè) Spring 配置文件,在這個(gè)文件中,配置我們上面定義的XlsView類的 Bean,要指定 id,后面會(huì)使用。下面在類路徑下添加這個(gè)文件:
3)編寫控制器
@Controller @RequestMapping("/excel/view") public class VestXlsViewController { @GetMapping("/xls") public String getXls() { return "xlsview"; } }
??注意,這個(gè)控制器返回的是在mvc-views.xml文件中配置的 Bean 的 id。
4)測(cè)試??在瀏覽器中發(fā)送請(qǐng)求excel/view/xls后,瀏覽器會(huì)產(chǎn)生一個(gè)下載 xls 文件提醒。下載這個(gè) xls 文件查看結(jié)果。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/66101.html
摘要:支持以下自定義特性的序列化與反序列化自定義單元格類型,自定義函數(shù),自定義格式,自定義函數(shù)迷你圖,自定義標(biāo)簽,以及自定義行篩選。 Spread JSON 導(dǎo)入導(dǎo)出 在SpreadJS表單控件中可以導(dǎo)入導(dǎo)出JSON數(shù)據(jù),收集界面的錄入數(shù)據(jù), 數(shù)據(jù)源序列化 若要將表單中的數(shù)據(jù)源序列化到JSON對(duì)象中,可以設(shè)置參數(shù)includeBindingSource: true,若未設(shè)置默認(rèn)為false....
摘要:為函數(shù)提供語法支持為和行為一致,計(jì)算函數(shù)現(xiàn)在使用語法對(duì)值進(jìn)行格式設(shè)置替代了過去使用語法。在這種情況下,客戶端接口和將不起作用。也于近日發(fā)布了新版本,敬請(qǐng)點(diǎn)擊此處了解更多。 超強(qiáng)數(shù)據(jù)處理,無縫兼容Excel!Spread Studio是一款高度兼容 Excel 的跨平臺(tái)表格控件,用于在您的應(yīng)用系統(tǒng)中實(shí)現(xiàn)表格數(shù)據(jù)錄入和編輯等交互功能,并且提供靈活的定制能力和豐富的數(shù)據(jù)可視化效果,為商業(yè)表單...
摘要:為函數(shù)提供語法支持為和行為一致,計(jì)算函數(shù)現(xiàn)在使用語法對(duì)值進(jìn)行格式設(shè)置替代了過去使用語法。在這種情況下,客戶端接口和將不起作用。也于近日發(fā)布了新版本,敬請(qǐng)點(diǎn)擊此處了解更多。 超強(qiáng)數(shù)據(jù)處理,無縫兼容Excel!Spread Studio是一款高度兼容 Excel 的跨平臺(tái)表格控件,用于在您的應(yīng)用系統(tǒng)中實(shí)現(xiàn)表格數(shù)據(jù)錄入和編輯等交互功能,并且提供靈活的定制能力和豐富的數(shù)據(jù)可視化效果,為商業(yè)表單...
閱讀 9731·2021-11-18 10:02
閱讀 2701·2019-08-30 15:43
閱讀 2716·2019-08-30 13:50
閱讀 1453·2019-08-30 11:20
閱讀 2765·2019-08-29 15:03
閱讀 3692·2019-08-29 12:36
閱讀 978·2019-08-23 17:04
閱讀 670·2019-08-23 14:18