springmvc创建导出视图
来源:互联网 发布:java乘法函数 编辑:程序博客网 时间:2024/06/06 12:23
1.导入jar包,以下使用的是maven导入jar包
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi --><dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.15</version></dependency>
2.再springmvc配置文件中添加视图解析器
<!-- excel视图解析 --><bean class="org.springframework.web.servlet.view.BeanNameViewResolver"> <property name="order" value="0"/> </bean>
注:这里的order注入的值是优先级,越靠前越优先
3.添加导出视图类
package com.view;import java.io.OutputStream;import java.text.SimpleDateFormat;import java.util.Date;import java.util.List;import java.util.Map;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.web.servlet.view.document.AbstractExcelView;import org.apache.poi.hssf.usermodel.HSSFCellStyle;import org.apache.poi.hssf.usermodel.HSSFDataFormat;import org.apache.poi.hssf.usermodel.HSSFRow;import org.apache.poi.hssf.usermodel.HSSFSheet;import org.apache.poi.hssf.usermodel.HSSFWorkbook;@SuppressWarnings("deprecation")public class ViewExcel extends AbstractExcelView {@Overrideprotected void buildExcelDocument(Map<String, Object> model, HSSFWorkbook workbook, HttpServletRequest request, HttpServletResponse response) throws Exception {// TODO Auto-generated method stub//获取日期Date now =new Date();//获取日期SimpleDateFormat data = new SimpleDateFormat("yyyyMMddHHmmss");String fileName = data.format(now).toString()+".xls"; response.setCharacterEncoding("UTF-8"); response.setContentType("application/ms-excel"); response.setHeader("Content-Disposition", "inline; filename="+new String(fileName.getBytes(),"iso8859-1")); OutputStream outputStream = response.getOutputStream(); // 新建工作表 HSSFSheet sheet = workbook.createSheet("sheet1"); HSSFRow header = sheet.createRow(0); // 标题数据String[] DataTitles = (String[]) model.get("DataTitle"); GetList(header,DataTitles); HSSFCellStyle cellStyle = workbook.createCellStyle(); cellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("mm/dd/yyyy")); int rowNumber = 1; //数据信息 @SuppressWarnings("unchecked")List<String[]> DataLists = (List<String[]>) model.get("DataList"); for (String[] list : DataLists) { HSSFRow row = sheet.createRow(rowNumber++); GetList(row,list); } workbook.write(outputStream); outputStream.flush(); outputStream.close(); } public void GetList(HSSFRow row,String[] list){int i = 0;for(String data : list){ row.createCell(i).setCellValue(data); i++; }}}
4.添加控制器
public ModelAndView demo(){Map<String, Object> model = new HashMap<String, Object>();List<String[]> userList = new ArrayList<String[]>();User user = new User("1", "Tome", "Tom@qq.com", "123456"); model.put("DataList", userList); model.put("DataTitle", new String[]{"ID","用户名","邮箱","密码"}); return new ModelAndView(new ViewExcel(), model);}
阅读全文
0 0
- springmvc创建导出视图
- SpringMVC-视图
- springmvc视图
- oracle 删除trigger 创建视图 导出表结构
- 创建表空间、用户、dblink、让用户持有dblink、创建视图、建立同义词、导出数据
- SpringMVC视图中的tiles视图
- 创建视图
- 创建视图
- 创建视图
- 创建视图
- 创建视图
- 创建视图
- 创建视图
- 视图创建
- 创建视图
- 创建视图
- 创建视图
- 创建视图
- Windbg双机调试配置
- 【帝国CMS】列表页分页标签样式及首位隐藏JS
- ECharts.js学习(二)动态数据绑定
- SSM框架搭建
- BZOJ 3172: [Tjoi2013]单词 AC自动机/后缀自动机
- springmvc创建导出视图
- 取值方法
- android权限管理
- 88. Merge Sorted Array
- PHPCMS 配置支付宝接口
- 面试OR笔试13——字母数字排序
- c++ 常用STL笔记
- xpath与多线程爬虫
- 设计模式——享元模式