easyPOI实现对excal表格的导入导出
一:使用EasyPOI实现对数据库表格的导出
在domain实体类中的属性添加注解,需要生成表格数据的属性都要加
1
| @Excel(name="表头",width = 表格宽度)
|
在逻辑代码中将实体类数据封装为List集合
定义表信息
设置表信息
设置导出表根据哪个实体类生成(刚才添加注解的实体类)
设置表信息
设置文件名
通过视图解析器将表格返回
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| public String download(ModelMap map,EmployeeQuery query, HttpServletRequest request) { List<Employee> list = employeeService.findByQuery(query); ExportParams params = new ExportParams("员工管理", "明细", ExcelType.XSSF); map.put(NormalExcelConstants.DATA_LIST, list); map.put(NormalExcelConstants.CLASS, Employee.class); map.put(NormalExcelConstants.PARAMS, params); map.put(NormalExcelConstants.FILE_NAME, "employee"); return NormalExcelConstants.EASYPOI_EXCEL_VIEW; }
|
在spring-mvc中配置视图解析器
1 2 3 4 5
| <context:component-scan base-package="cn.afterturn.easypoi.view" />
<bean id="beanNameViewResolver" class="org.springframework.web.servlet.view.BeanNameViewResolver" > <property name="order" value="0"></property> </bean>
|
二:使用easyPOI实现对excal表格的导入
准备导入的参数
setTitleRows为设置标题所占行数
setHeadRows为设置表头所占行数
创建List集合用于接收表格数据,泛型为实体类,将表格转换为实体类的集合
传入的参数为根据上传的表格获取输入流,实体类,读取表格参数
1 2 3 4 5 6 7 8 9 10 11
| public void employeeXlsx(MultipartFile empFile) throws Exception { ImportParams params = new ImportParams(); params.setTitleRows(1); params.setHeadRows(1); List<Employee> list = ExcelImportUtil.importExcel( empFile.getInputStream(), Employee.class, params);
}
|
Comments:
ReferenceError: AV is not defined
Valine:1.1.7
反馈:https://github.com/xCss/Valine/issues