`
yuzhouchangwan
  • 浏览: 11391 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

简单的poi导出

    博客分类:
  • java
阅读更多
@Override
    public void exportXlsNotBill(HttpServletResponse response, TSBaseUser user) throws UnsupportedEncodingException {
        // 第一步,创建一个webbook,对应一个Excel文件
        HSSFWorkbook wb = new HSSFWorkbook();
        // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
        HSSFSheet sheet = wb.createSheet("无审批单特殊物品信息");
        sheet.setDefaultRowHeightInPoints(20);
        sheet.setDefaultColumnWidth((short) 20);
        // 第三步,在sheet中添加表头第0行
        HSSFRow row = sheet.createRow((int) 0);
        // 创建一个居中格式
        HSSFCellStyle style = wb.createCellStyle();
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
        // 第四步  设置值表头 设置表头
        HSSFCell cell = row.createCell((short) 0);
        cell.setCellValue("上报人姓名 ");
        cell.setCellStyle(style);
        cell = row.createCell((short) 1);
        cell.setCellValue("上报单位单位");
        cell.setCellStyle(style);
        cell = row.createCell((short) 2);
        cell.setCellValue("联系电话 ");
        cell.setCellStyle(style);
        cell = row.createCell((short) 3);
        cell.setCellValue("申请时间");
        cell.setCellStyle(style);
        cell = row.createCell((short) 4);
        cell.setCellValue("出入境方式 ");
        cell.setCellStyle(style);
        cell = row.createCell((short) 5);
        cell.setCellValue("物品类别 ");
        cell.setCellStyle(style);
        cell = row.createCell((short) 6);
        cell.setCellValue("产品名称");
        cell.setCellStyle(style);
        cell = row.createCell((short) 7);
        cell.setCellValue("数量 ");
        cell.setCellStyle(style);
        cell = row.createCell((short);
        cell.setCellValue("重量");
        cell.setCellStyle(style);
        cell = row.createCell((short) 9);
        cell.setCellValue("货值");
        cell.setCellStyle(style);
        cell = row.createCell((short) 10);
        cell.setCellValue("处理方式");
        cell.setCellStyle(style);
        cell = row.createCell((short) 11);
        cell.setCellValue("运输方式");
        cell.setCellStyle(style);
        cell = row.createCell((short) 12);
        cell.setCellValue("备注");
        cell.setCellStyle(style);
        //第五步  设置数据集
        StringBuffer hql = new StringBuffer();
        hql.append("from NotBillProductEntity where 1=1 ");
        if (ResourceUtil.getSessionUser().getManagerRole()== Manager_Role.SHENGJU_ADMIN) {
            hql.append(" and depart like '" + user.getDepartid().substring(0, 2) + "%'");
        } else if (ResourceUtil.getSessionUser().getManagerRole() == Manager_Role.FENZHIJU_ADMIN) {
            hql.append(" and depart='" + user.getDepartid() + "'");
        }

        List<NotBillProductEntity> list = findHql(hql.toString());
        for (int i = 0; i < list.size(); i++) {
            row = sheet.createRow(i + 1);
            NotBillProductEntity np = list.get(i);
            HSSFCell dataCell = row.createCell((short) 0);
            dataCell.setCellValue(np.getCreateUserName());
            dataCell = row.createCell((short) 1);
            dataCell.setCellValue(np.getCreateCorpId());
            dataCell = row.createCell((short) 2);
            dataCell.setCellValue(np.getPhone());
            dataCell = row.createCell((short) 3);
            dataCell.setCellValue(DateUtils.dateToStr(np.getCreateDate(),DateUtils.YYYY_MM_DD));
            dataCell = row.createCell((short) 4);
            dataCell.setCellValue(np.getExitWay() == 1 ? "入境" : "出境");
            dataCell = row.createCell((short) 5);
            ProductCategoryEntity pro = getEntity(ProductCategoryEntity.class, np.getPcategory());
            dataCell.setCellValue(pro.getName());  //特殊物品类别
            dataCell = row.createCell((short) 6);
            dataCell.setCellValue(np.getProductName());  //特殊物品类别
            dataCell = row.createCell((short) 7);
            dataCell.setCellValue(np.getGrossNum() + np.getGrossUnit());
            dataCell = row.createCell((short);
            dataCell.setCellValue(np.getWeightNum() + np.getWeightUnit());
            dataCell = row.createCell((short) 9);
            dataCell.setCellValue(np.getValueNum() + "美元USD");
            dataCell = row.createCell((short) 10);
            String clfs = "其他";
            if (np.getDisposeWay() == 1) {
                clfs = "截留";
            } else if (np.getDisposeWay() == 2) {
                clfs = "销毁";
            } else if (np.getDisposeWay() == 3) {
                clfs = "退运";
            }
            dataCell.setCellValue(clfs);
            dataCell = row.createCell((short) 11);
            String ysfs = "货运";
            if (np.getTransportWay() == 1) {
                clfs = "旅客携带";
            } else if (np.getTransportWay() == 2) {
                clfs = "邮件";
            } else if (np.getTransportWay() == 3) {
                clfs = "快件";
            }
            dataCell.setCellValue(ysfs);
            dataCell = row.createCell((short) 12);
            dataCell.setCellValue(np.getRemark());
        }
        // 第六步,将文件存到指定位置
        response.setHeader("Content-disposition", "attachment;filename=" + new String(("无审批的特殊物品.xls").getBytes("GBK"), "ISO8859-1"));
        try {
            wb.write(response.getOutputStream());
            response.getOutputStream().close();
        } catch (Exception e) {
            logger.error("exportXlsNotBill(HttpServletResponse, TSBaseUser)", e); //$NON-NLS-1$
        }
    }
分享到:
评论

相关推荐

    POI导出 POI导出 POI导出

    POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI...

    POI导出Excel文件

    以下是一个简化的示例,演示了如何使用POI导出Excel: ```java import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import java.io.FileOutputStream; import java.io....

    poi 导出多表头

    在本场景中,我们关注的是如何使用 POI 来创建具有复杂表头的 Excel 导出功能。多表头通常指的是在 Excel 表格中拥有多个层次的列标题,这在处理分类数据或者构建具有嵌套结构的报告时非常有用。 ** poi 导出多表头...

    poi导出cvs文件

    标题中的“poi导出csv文件”指的是使用Apache POI库来生成CSV(逗号分隔值)文件。Apache POI是Java中一个流行的库,它主要用于处理Microsoft Office格式的文件,如Excel。在这个场景中,我们将探讨如何使用POI来...

    poi导出导入封装(使用注解建立实体与excel映射关系+反射设置实体属性值)

    poi导出导入封装(使用注解建立实体与excel映射关系+反射设置实体属性值), poi导出导入封装(使用注解建立实体与excel映射关系+反射设置实体属性值) poi导出导入封装(使用注解建立实体与excel映射关系+反射设置...

    springboot+poi导出指定格式Excel模板

    springboot+poi导出指定格式Excel模板,完整项目,导出即用。springboot+poi导出指定格式Excel模板,完整项目,导出即用。springboot+poi导出指定格式Excel模板,完整项目,导出即用。springboot+poi导出指定格式...

    java使用POI导出 Excel工具类

    java使用POI导出 Excel+图片工具类 ,里面含有poi jar包,只调用接口即可直接保存Excel。使用的时候需先把数据封装,具体包装需根据实际导出数据进行处理。文件demo中只提供包装格式。

    POI导出Tree结构数据(连接线).doc

    POI框架导出Tree结构数据(连接线) 一、问题描述及现象需求说明 在效果评估系统中,存在指标管理和模板管理两个模块。模板管理中有一个导出模板功能,可以将模板导出到Excel表格中。模板下可以嵌套的是指标或模板...

    POI导出Excel万级数据分页实现 解决内存溢出问题

    然而,当处理大量数据时,直接使用POI导出Excel可能会遇到内存溢出问题,因为POI将整个工作簿加载到内存中。本项目演示了如何通过分页方式解决这个问题,避免一次性加载过多数据导致的性能瓶颈。 首先,理解POI的...

    poi导出excel参考方法

    POI导出Excel参考方法 POI(Poor Obfuscation Implementation)是一个Java的API,用于操作Microsoft Office文档,包括Excel、Word、PowerPoint等。下面是POI导出Excel参考方法的相关知识点: 1. POI的基本概念 ...

    license的计算放法,desc加密方法和简单POI导出excel

    最后,我们来看“简单POI导出Excel”。Apache POI提供了一种方便的方式来读取、写入和修改Microsoft Office格式的文件,特别是Excel(.xlsx或.xls)。使用POI,你可以创建新的工作簿,添加工作表,插入单元格,设置...

    poi导出最简单

    标题中的“poi导出最简单”指的是使用Apache POI库在Java中进行Excel文件导出的一个简化示例。Apache POI是Java社区中广泛使用的库,它允许开发者创建、修改和显示Microsoft Office格式的文件,其中包括Excel(XLS和...

    poi导出Excel源码

    自己整理的poi导出Excel

    poi导出excel生成下拉列表

    poi作为导出excel常用的工具,方便快捷。对于excel指定下拉列表的列,如何生成呢?本文提供如何生成下拉列表的excel列

    POI导出(数据库数据)

    【标题】"POI导出(数据库数据)"所涉及的知识点主要集中在使用Apache POI库来导出数据库中的数据到Excel文件。Apache POI是一个流行的开源Java API,它允许开发者创建、修改和显示Microsoft Office格式的文件,尤其...

    POI导出带图片的excel

    Apache POI是一个流行的Java库,用于读取、创建和修改Microsoft Office格式的文件,特别是Excel工作簿。在本文中,我们将深入探讨如何使用POI库将图片插入到Excel文档中,以便创建包含图像的丰富报告。 首先,让...

    java poi导出Excel上传实例 可直接使用

    通过上述步骤,你就创建了一个基本的Java程序,能够使用Apache POI导出Excel文件。在项目中,你可以根据实际需求对这个示例进行扩展,比如从数据库读取数据、动态生成列名或自定义样式。这个"poi2"文件可能是包含此...

    POI导出Word 页眉 页脚 标题设置

    在本主题中,我们将深入探讨如何使用POI库来导出Word文档,并进行页眉、页脚和标题的设置。这个过程涉及到对Word文档的高级布局控制,对于自动化报告生成或批量创建文档非常有用。 1. **Apache POI简介** Apache ...

    POI导出Excel表格

    在这个“POI导出Excel表格”的实例中,我们将深入探讨如何利用Apache POI进行Excel文件的导入与导出操作。 首先,我们需要在项目中集成Apache POI库。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```...

    java poi导出excel

    以上就是使用Java POI导出Excel的基本步骤。你可以根据实际需求调整代码,例如添加数据遍历、样式设置、图表生成等功能。确保正确管理资源,避免内存泄漏,特别是在服务器端处理大量数据时。记得在完成后关闭工作簿...

Global site tag (gtag.js) - Google Analytics