java导出excel表格:

Java读取并导出Word中的表格(Excel),导出文件为Excel 看公司的同事很费劲的在一条一条地从Word中的表格复制粘贴到Excel, 我从网上找个两个demo给合在了一起,帮他解决了问题。最下方有源码。 一个两个类 第一个: package com.wbs.test; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOExcept 阅读详情

1、导入jar包

<dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.5-FINAL</version>
        </dependency>

2、编写工具类

复制代码
package utils;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

public class ExcelUtil {
    
    public static HSSFWorkbook getHSSFWorkbook(String sheetName,String []title,String [][]values, HSSFWorkbook wb){
         // 第一步,创建一个webbook,对应一个Excel文件  
        if(wb == null){
            wb = new HSSFWorkbook();
        }
        // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet  
        HSSFSheet sheet = wb.createSheet(sheetName);  
        // 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short  
        HSSFRow row = sheet.createRow(0);  
        // 第四步,创建单元格,并设置值表头 设置表头居中  
        HSSFCellStyle style = wb.createCellStyle();  
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式  
        
        HSSFCell cell = null;  
        //创建标题
        for(int i=0;i<title.length;i++){
            cell = row.createCell(i);  
            cell.setCellValue(title[i]);  
            cell.setCellStyle(style);  
        }
        //创建内容
        for(int i=0;i<values.length;i++){
            row = sheet.createRow(i + 1); 
            for(int j=0;j<values[i].length;j++){
                 row.createCell(j).setCellValue(values[i][j]);
            }
        }
        
       return wb;
    }
    
    
}
复制代码

3、导入表格信息

复制代码
package mvc.controller;

import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;

import mvc.model.Feedback;
import mvc.model.JResponse;
import mvc.model.apis.DownloadExcel;
import mvc.service.IAppInfoService;
import mvc.service.IBusinessService;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.prize.utils.StringUtil;

import utils.ExcelUtil;

@Controller
@RequestMapping(value="/excel/*")
public class ExcelController {
    
    @Resource
    private IAppInfoService appinfoService;
    
    @Resource
    private IBusinessService businessService;

    @RequestMapping(value = "exportfeedback")
    @ResponseBody
    public JResponse exportFeedBack(HttpServletResponse response,
            @RequestParam(value="query", required=false) String searchText,
            @RequestParam(value="type", required=false) String strType,
            @RequestParam(value="startDate", required=false) String startDate,
            @RequestParam(value="endDate", required=false) String endDate){
        
        String fileName = "反馈明细"+System.currentTimeMillis()+".xls"; //文件名 
        String sheetName = "反馈明细";//sheet名
        
        String []title = new String[]{"Id","导航图标","反馈类型","内容","联系方式","应用Id","应用版本","反馈时间"};//标题
        
        List<Feedback> list = appinfoService.getAllFeedbackForExcel(searchText, strType, startDate, endDate);//内容list
        
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        
        String [][]values = new String[list.size()][];
        for(int i=0;i<list.size();i++){
            values[i] = new String[title.length];
            //将对象内容转换成string
            Feedback obj = list.get(i);
            values[i][0] = obj.getId()+"";
            values[i][1] = obj.getFiles();
            values[i][2] = obj.getFbType();
            values[i][3] = obj.getContent();
            values[i][4] = obj.getContactInfo();
            values[i][5] = obj.getAppId();
            values[i][6] = obj.getVersionName();
            values[i][7] = sdf.format(obj.getCreateTime());
            
        }
        
        HSSFWorkbook wb = ExcelUtil.getHSSFWorkbook(sheetName, title, values, null);
        
        //将文件存到指定位置  
        try {  
             this.setResponseHeader(response, fileName);  
             OutputStream os = response.getOutputStream();  
             wb.write(os);  
             os.flush();  
             os.close();  
        } catch (Exception e) {  
             e.printStackTrace();  
        }  
        return JResponse.success("ok");
    }
    
     public void setResponseHeader(HttpServletResponse response, String fileName) {  
         try {  
              try {  
                   fileName = new String(fileName.getBytes(),"ISO8859-1");  
              } catch (UnsupportedEncodingException e) {  
                   // TODO Auto-generated catch block  
                   e.printStackTrace();  
              }  
              response.setContentType("application/octet-stream;charset=ISO8859-1");  
              response.setHeader("Content-Disposition", "attachment;filename="+ fileName);  
              response.addHeader("Pargam", "no-cache");  
              response.addHeader("Cache-Control", "no-cache");  
         } catch (Exception ex) {  
              ex.printStackTrace();  
         }  
    } 
}
复制代码
注意这里将 List<Feedback> list = appinfoService.getAllFeedbackForExcel(searchText, strType, startDate, endDate);//内容list 换成你自己的获取数据方法,将values二维数组导入util工具类方法中即可。

整体思路:将二维数组导入excel。


4、访问link即可,如:XXX
/excel/exportfeedback
复制代码
<button id="js-export" type="button" class="btn btn-primary">导出Excel</button>


$('#js-export').click(function(){ window.location.href="/xxx/excel/exportfeedback?type="+$('#type').val()+"&startDate="+$('#table_start_date').val()+"&endDate="+$('#table_end_date').val(); });
复制代码
Java导出Excel表只在一张sheet页下分多个表格 这是一个需求:之前的Excel是多个表每一个表一个sheet页,现在想在一个sheet页下导出多个表 思路:多添加一个字段rownum(行数),记录每次添加之后行数并在这个行数之后再进行添加数据,就会将数据导到一个sheet页导出来了。 这里有一个导出Excel方法工具类例子: excel工具类 import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; impo 阅读详情

相关推荐

java导出excel 在web项目

喜欢学习的人,可以再项目中应用.java到报表没有什么

Java导出Excel表

Java导出Excel

zzxh210的博客 8936

SAP MM新手避坑指南:工厂间调拨用301还是303?手把手教你选对移动类型

本文深入解析SAP MM模块中工厂间调拨的301与303移动类型,帮助新手避开常见陷阱。通过对比一步法(301)和两步法(303+305)的核心差异、适用场景及财务影响,提供清晰的决策框架和实战技巧,确保库存调拨的准确性和效率。

weixin_29223603的博客 346

java 导出到excel的几种方式你要知道

java导出excel常用的方式使用poi apache开源方式导入导出,后面很多公司自己研发导出组件。采用easyexcel 方式导出方式比较简单,直接用,通过注解方式实现导出。 至于导出特别大的数据量其实程序本身都是有性能瓶颈的,因为几百万的数据直接内存溢出了,所以对于大数据量的导出,可以采用异步下载,异步上传,通过下载中心去导出是最好的。

2万+

从零搭建医疗化验单识别系统:深度学习+OCR实战教程(附数据集)

本文详细介绍了如何从零开始构建一个医疗化验单智能识别系统。通过融合深度学习和OCR技术,系统能够应对版式多样、内容专业的医疗单据,实现从文本检测、识别到关键信息结构化抽取的全流程。文章提供了数据集处理、模型选型、训练微调及工程化部署的实战指南,并分享了避坑经验与性能优化策略,为开发者解决医疗信息化痛点提供了完整的技术方案。

k9l0m1的博客 492

开关电源补偿设计避坑手册:为什么你的Buck电路总在轻载时振荡?

本文深入剖析了Buck电路在轻载时发生振荡的根本原因,并提供了专业的补偿设计避坑指南。文章指出,轻载下输出滤波器Q值飙升、DCM模式切换导致的小信号模型剧变是主要诱因,并详细对比了Type II与Type III补偿网络在宽负载范围内的表现差异。通过结合LTspice仿真与工程实践,指导工程师如何优化补偿环路设计,确保电源从满载到空载的全程稳定。

hadoop5ranger的博客 673

java的Excel导出方式总结

excel的各种导出方式总结 非常全面

zjq852533445的博客 2万+

工业自动化进阶:西门子 S7-1200 PLC 调度 AGV 实现精确定点移动

本文介绍了基于西门子S7-1200PLC的AGV调度控制系统设计,包括系统架构、硬件选型和PLC程序设计。系统通过PROFINET通信实现PLC与AGV的数据交互,采用状态机控制逻辑实现任务管理、运动控制和闭环位置校正。重点阐述了通信协议实现、梯形图核心逻辑及系统调试优化方法。实际应用案例显示,该系统定位精度达±3mm,显著提升了物料配送效率。该方案为工业自动化升级提供了可靠的技术支持。

qq_52407556的博客 1886

Java导入、导出excel保姆级教程(附封装好的工具类)

前言我们在日常开发中,一定遇到过要将数据导出为Excel的需求,那么怎么做呢?在做之前,我们需要思考下Excel的组成。Excel是由四个元素组成的分别是:WorkBook(工作簿)、Sheet(工作表)、Row(行)、Cell(单元格),其中包含关系是从左至右,一个WorkBook可以包含多个Sheet,一个Sheet又是由多个Row组成,一个Row是由多个Cell组成。知道这些后那么我们就使用...

Java知音 9711

综合能源系统多时间尺度优化调度!诸多创新点让你抓住审稿人的心!

主要介绍综合能源系统的设备组成结构,并针对屋顶光伏系统、冷-热-电联供系统中的燃气轮机、燃气锅炉、光伏溴化锂制冷机、卡琳娜余热发电、中央空调系统,以及外网交互系统的配电网与天然气管网交互关系进行数学建模。1) 源-荷-储协同调度:研究屋顶光伏、燃气轮机、燃气锅炉等源侧设备,中央空调、电-热-冷负荷、可平移电负荷、可削减温控负荷等负荷侧资源,以及储能系统、电动汽车等储能侧设备的协同调度,以提高风光消纳能力,满足社会能源需求。通过电转热、电转冷、电转气等多能耦合方式,可进一步促进可再生能源的应用与发展。

weixin_48747334的博客 1488

【ESP32-IDF】I2S音频协议实战:从PDM麦克风到PCM扬声器的全链路解析

本文深入解析ESP32-S3的I2S音频协议,从PDM麦克风采集到PCM扬声器输出的全链路实现。详细介绍了硬件PDM转PCM、Standard模式配置及混合模式协同工作,提供实战代码与性能优化建议,助力开发者高效完成嵌入式音频项目开发。

pea55的博客 886

JAVA导出Excel文件

JAVA生成Excel文件并导出 一:集成POI 1、Apache POI 2、easyexcel 二:Excel相关操作 1、基础Excel导出 2、压缩Zip导出 3、错误Excel导出 4、根据Html导出 5、根据模板导出 6、根据模板及列表导出 7、根据模板及列表扩充导出 8、根据模板导出,拆分多个sheet页 9、导入 三:Excel代码 1、工具类 2、测试Bean 3、测试Service 4、测试ServiceImpl 5、测试Controller

qq_38254635的博客 2万+

【PX4学习笔记】1. ROS及PX4环境搭建

环境 Ubuntu18.04 安装教程参考 https://www.guyuehome.com/8983 安装过程中问题的解决 问题1 rosdep init 错误的终极解决方法 注意etc/下的ros和rostep文件夹要自己建 问题2 Ubuntu安装ROS报错 sudo: rosdep:找不到命令 问题3(更好地解决了问题1、2)【推荐】 解决GitHub的raw.githubusercontent.com无法连接问题 问题4:GeographicLib的安装 教程中安装GeographicLib d

【人工智障 | 计算鸡视觉 | 机器孩】 8231

java导出复杂excel表格_java使用freemarker导出复杂的excel表格

正常导出excel表格使用的poi,但是导出复杂的excel有点困难,但是可以使用freemaker模板来导出复杂的excel。都是先生成一个Excel表格的模板,最好是增加一行数据。具体看图里面的步骤。项目整体结构下面就直接看代码public class Data {//代码复制之后直接就可以运行了public static void main(String[] args) {demo();}p...

weixin_39999536的博客 1142

Python高阶爬虫:逆向工程模拟Wind/同花顺等金融终端数据抓取

本文详细阐述了模拟金融数据终端进行数据抓取的全套技术方案。我们从法律合规性讲起,选择了Playwright作为核心自动化工具,通过两个实战案例(同花顺网页版和Wind桌面版)演示了从分析、模拟到数据解析的完整流程,并进一步介绍了构建健壮爬虫系统所需的高级技巧。我们的策略是:启动一个由Playwright控制的浏览器,模拟真人登录,然后监听所有网络请求,从中过滤出我们需要的那个数据API。if key in ['f43', 'f169', 'f170', 'f46', 'f60']: # 价格类字段。

2201_76125261的博客 546

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

java如何导出excel_JAVA如何导出EXCEL表格

JAVA导出EXCEL表格的方法:首先用HSSFWorkbook打开或者创建“Excel文件对象”;然后用Sheet对象返回行对象,用行对象得到Cell对象;接着对Cell对象读写;最后将生成的文件放入响应的前端页面。JAVA导出EXCEL表格的方法:基本操作步骤:首先,我们应该要知道的是,一个Excel文件对应一个workbook,一个workbook中有多个sheet组成,一个sheet是由多...

weixin_35715629的博客 1286

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

java使用Poi导出excel表格

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)、博主微信(guyun297890152)、QQ技术交流群(183198395)。 在之前的一篇文章java操作Excel实战干货中展示了使用poi库读取excel表格的的用法,今天演示另一个常用功能,将数据导出到excel中,按照实战演练方式,后台提供接口,数据来源于数据库,然后导出excel输...

孤云博客 5416

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Java 导出Excel表格

版本1 思路: 1).将查询出来的数据添加到Excel表格中 2).将表格保存到项目的根目录下 3).获取根目录进行下载 4).删除根目录下的Excel表格 实现代码 public void exportExcelForm(){ if(resourceId == null && resourceId == 0){ outPrint(Message.common("导出失败!"...

weixin_45267345的博客 196

java导出excel表格

java导出excel表格: 1、导入jar包 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.5-FIN...

diansitao5461的博客 243

Java如何导出Excel表格

Java导出Excel Markdown和扩展Markdown简洁的语法 代码块高亮 - 代码块 代码块语法遵循标准markdown代码,例如: //&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;!—Servlet 界面直接调用就可以了,这里我不会转小数类型--&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;a

冷秋凋零你可知的博客 1万+

java导出excle表格数据,java 导出excel表格数据

java 导出excel表格数据package bp.util;import java.io.OutputStream;import java.util.List;import javax.servlet.http.HttpServletResponse;import java.lang.reflect.Field;import jxl.Workbook;import jxl.format.Ali...

weixin_39990558的博客 185

java 将网页表格导出_Java导出网页表格Excel过程详解

将网页中的table数据,导出到excel表格,可以使用java POI实现。java poi是java中操作excel的工具,支持excel的导入与导出,一般有三种形式:1.HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xls;2.XSSFWorkbook:是操作Excel2007后的版本,扩展名是.xlsx;3.SXSSFWorkbook:是操作Exc...

weixin_35728286的博客 602

java实现Excel表格导出

Excel表格导出工具类 import org.apache.poi.hssf.usermodel.*; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.spri

zhangsan9527的博客 320

java将jsp页面表格导出excel表格数据_如何将jsp页面的table报表转换到excel报表导出...

假设这就是你的jsp页面:我们会添加一个“导出到excel”的超链接,它会把页面内容导出到excel文件中。那么这个页面会变成这个样子在此,强调一下搜索时关键词的重要性,这样一下子可以定位到文章,否则处于盲人摸象,毫无目的尴尬境地。本篇就是通过export jsp to excel找到的。本篇教程我们会看到如何把JSP页面导出到Excel中,会在已有的JSP页面中增加导出excel的功能。许多时候...

weixin_36251052的博客 826

java导出excel竖着_Excel导出纵向表格(poi)

导出表格头标签为纵向的Excel表格1、service层@Transactional(readOnly = true)public HSSFWorkbook projectExports(Integer curPage, Integer perPageSum, Integer projectId, String schemaId,HttpServletResponse response) thro...

weixin_29021757的博客 2230

java导出excel框架_java代码实现导出Excel表格、工具ssm框架、maven、idea

第一步、导入依赖org.apache.poipoi3.9org.apache.poipoi-examples3.9org.apache.poipoi-excelant3.9org.apache.poipoi-ooxml3.9org.apache.poipoi-ooxml-schemas3.9org.apache.poipoi-scratchpad3.9第二步,编写实体类public class Z...

weixin_29468871的博客 309
上一篇: JSON 之FastJson解析
下一篇: java操作excel 插入 读取 超链接
千雅爸爸
博客等级 码龄18年 292粉丝 639原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值