iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >java如何导出excel
  • 854
分享到

java如何导出excel

2023-06-15 11:06:46 854人浏览 独家记忆
摘要

小编给大家分享一下java如何导出excel,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!看代码吧~public static void&nb

小编给大家分享一下java如何导出excel,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

看代码吧~

public static void exportExcelByDownload(HSSFWorkbook wb,httpservletResponse HttpServletResponse,String fileName) throws Exception {    //响应类型为application/octet- stream情况下使用了这个头信息的话,那就意味着不想直接显示内容    httpServletResponse.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);    //attachment为以附件方式下载    httpServletResponse.setHeader("Content-Disposition","attachment;filename=" + URLEncoder.encode(            fileName + ".xls",            "utf-8"));        httpServletResponse.setHeader("Cache-Control", "No-cache");    httpServletResponse.flushBuffer();    wb.write(httpServletResponse.getOutputStream());    wb.close();}public static void exportExcelByFile(HSSFWorkbook wb,String fileName,String path) throws Exception{    ByteArrayOutputStream stream = new ByteArrayOutputStream();    wb.write(stream);    FileOutputStream outputStream = new FileOutputStream(path + fileName);    outputStream.write(stream.toByteArray());    stream.close();    outputStream.close();}

java查询数据导出excel并返回给浏览器下载

效果图:

1.点击导出表按钮

java如何导出excel

2.接着就会出现下图

java如何导出excel

3.点击上图中的确定按钮再接着就会出现下图

java如何导出excel

4.点击上图中的保存按钮接着就会出现下图,浏览器下载完成后的提示

java如何导出excel

5.打开下载好的文件如下图

java如何导出excel

好了,废话不多少,上代码

jsp前端代码

<div ><a>时间:</a>        <input id="startDateConsume" type="text" class="easyui-datebox"> <a>-</a>        <input id="endDateConsume" type="text" class="easyui-datebox">        <a>消费类型:</a>       <select id="consumesType" name=""><option value="0" selected="selected">所有</option><option value="1">报名费</option><option value="2">酒水零食类</option></select>        <a>支付状态:</a>       <select id="conPaymentStatus" name=""><option value="0" selected="selected">所有</option><option value="1">未支付</option><option value="2">已支付</option></select>        <a id="btnConsumesSearch" class="easyui-linkbutton"data-options="iconCls:'icon-search'" >查询</a><a>(查询出来的数据可统计)</a><a id="consumesOutExcel" class="easyui-linkbutton"  data-options="iconCls:'icon-redo'">导出表</a></div>

js前端代码

$(function() {//导出excel表$('#consumesOutExcel').on('click',function(){exportExcel();});}); function exportExcel() {$.messager.confirm('确认', '确认把该搜索结果导出Excel表格 ?', function(r) {if (r) {var startTime = $('#startDateConsume').val();var endTime = $('#endDateConsume').val();var consumesType = $('#consumesType').val();var conPaymentStatus = $('#conPaymentStatus').val();$.messager.progress({title : '处理中',msg : '请稍后',});$.messager.progress('close');location.href="WEB/vip/exportExcel.xlsx?startTime=" rel="external nofollow" +startTime+"&endTime="+endTime+"&consumesType="+consumesType+"&conPaymentStatus="+conPaymentStatus;}}); }

java后端代码

@Controller@RequestMapping("/vip")public class VipController {//文件下载:导出excel表@RequestMapping(value = "/exportExcel.xlsx",method = RequestMethod.GET)@ResponseBodypublic void exportExcel(HttpServletRequest request,HttpServletResponse response) throws UnsupportedEncodingException{//一、从后台拿数据if (null == request || null == response){return;}List<VipConsumes> list = null;String startTime = request.getParameter("startTime");String endTime = request.getParameter("endTime");int consumesType = Integer.parseInt(request.getParameter("consumesType"));int conPaymentStatus =Integer.parseInt(request.getParameter("conPaymentStatus")); VipConsumesExample example = new VipConsumesExample();if(consumesType!=0 && conPaymentStatus!=0){example.createCriteria().andTimeBetween(startTime, endTime).andConsumeTypeEqualTo(consumesType).andStatusEqualTo(conPaymentStatus);}else if(consumesType ==0 && conPaymentStatus!=0) {example.createCriteria().andTimeBetween(startTime, endTime).andStatusEqualTo(conPaymentStatus);}else if(consumesType!=0 && conPaymentStatus==0){example.createCriteria().andTimeBetween(startTime, endTime).andConsumeTypeEqualTo(consumesType);}else {example.createCriteria().andTimeBetween(startTime, endTime);}            list = this.vipConsumesDao.selectByExample(example);//二、 数据转成excel    request.setCharacterEncoding("UTF-8");    response.setCharacterEncoding("UTF-8");    response.setContentType("application/x-download");     String fileName = "消费记录.xlsx";    fileName = URLEncoder.encode(fileName, "UTF-8");    response.addHeader("Content-Disposition", "attachment;filename=" + fileName);            // 第一步:定义一个新的工作簿    XSSFWorkbook wb = new XSSFWorkbook();    // 第二步:创建一个Sheet页    XSSFSheet sheet = wb.createSheet("startTimeendTime");    sheet.setDefaultRowHeight((short) (2 * 256));//设置行高    sheet.setColumnWidth(0, 4000);//设置列宽    sheet.setColumnWidth(1,5500);    sheet.setColumnWidth(2,5500);    sheet.setColumnWidth(3,5500);    sheet.setColumnWidth(11,3000);    sheet.setColumnWidth(12,3000);    sheet.setColumnWidth(13,3000);    XSSFFont font = wb.createFont();    font.setFontName("宋体");    font.setFontHeightInPoints((short) 16);        XSSFRow row = sheet.createRow(0);    XSSFCell cell = row.createCell(0);    cell.setCellValue("流水号 ");    cell = row.createCell(1);    cell.setCellValue("微信名 ");    cell = row.createCell(2);    cell.setCellValue("微信订单号");    cell = row.createCell(3);    cell.setCellValue("消费时间");    cell = row.createCell(4);    cell.setCellValue("消费类型");    cell = row.createCell(5);    cell.setCellValue("剩余积分 ");    cell = row.createCell(6);    cell.setCellValue("新增积分 ");    cell = row.createCell(7);    cell.setCellValue("扣除积分 ");    cell = row.createCell(8);    cell.setCellValue("消费金额");    cell = row.createCell(9);    cell.setCellValue("支付方式");    cell = row.createCell(10);    cell.setCellValue("支付状态 ");    cell = row.createCell(11);    cell.setCellValue("钱包原始金额");    cell = row.createCell(12);    cell.setCellValue("钱包扣除金额");    cell = row.createCell(13);    cell.setCellValue("钱包剩余金额");        XSSFRow rows;    XSSFCell cells;    for (int i = 0; i < list.size(); i++) {    // 第三步:在这个sheet页里创建一行    rows = sheet.createRow(i+1);    // 第四步:在该行创建一个单元格    cells = rows.createCell(0);    // 第五步:在该单元格里设置值    cells.setCellValue(list.get(i).getConsumeId());        cells = rows.createCell(1);    cells.setCellValue(list.get(i).getName());    cells = rows.createCell(2);    cells.setCellValue(list.get(i).getOrderNumber());    cells = rows.createCell(3);    cells.setCellValue(list.get(i).getTime());    cells = rows.createCell(4);    if (list.get(i).getConsumeType() == 2) {    cells.setCellValue("酒水零食费");     } else {    cells.setCellValue("报名费");    }    cells = rows.createCell(5);    cells.setCellValue(list.get(i).getIntegral());    cells = rows.createCell(6);    cells.setCellValue(list.get(i).getIntegralIn());    cells = rows.createCell(7);    cells.setCellValue(list.get(i).getIntegralOut());    cells = rows.createCell(8);    cells.setCellValue(list.get(i).getMoney());    cells = rows.createCell(9);    if (list.get(i).getPayment() == 2) {    cells.setCellValue("积分抵现");    } else if (list.get(i).getPayment() == 3) {    cells.setCellValue("微信支付");    } else if (list.get(i).getPayment() == 4) {    cells.setCellValue("现金");    } else if (list.get(i).getPayment() == 1) {    cells.setCellValue("钱包");    }    cells = rows.createCell(10);    if (list.get(i).getStatus() == 2) {    cells.setCellValue("已支付");    } else if (list.get(i).getStatus() == 1) {    cells.setCellValue("未支付");    }    cells = rows.createCell(11);    cells.setCellValue(list.get(i).getWalletOriginal());    cells = rows.createCell(12);    cells.setCellValue(list.get(i).getWalletOut());    cells = rows.createCell(13);    cells.setCellValue(list.get(i).getWalletSurplus());    }    try {OutputStream out = response.getOutputStream();    wb.write(out);    out.close();    wb.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} }}

以上是“java如何导出excel”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: java如何导出excel

本文链接: https://www.lsjlt.com/news/279831.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • java如何导出excel
    小编给大家分享一下java如何导出excel,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!看代码吧~public static void&nb...
    99+
    2023-06-15
  • java如何使用EasyExcel导入导出excel
    这篇文章主要介绍了java如何使用EasyExcel导入导出excel,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、准备工作1、导包<!-- poi&nb...
    99+
    2023-06-15
  • 如何使用java导出Excel文件
    如何使用java导出Excel文件?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。java导出Excel通用方法的实例详解Java导出Excel通用方法,只需要一...
    99+
    2023-05-31
    java excel ava
  • Java如何实现导出Excel功能
    这篇文章将为大家详细讲解有关Java如何实现导出Excel功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。刚写了个导入Excel表格,现在来写个导出,其实形式都差不多,废话不多说,贴代码&...
    99+
    2023-06-21
  • java如何实现Excel的导入、导出操作
    这篇文章主要为大家展示了java如何实现Excel的导入、导出操作,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。一、Excel的导入导入可采用两种方式,一种是JXL,另一种是POI,但前者不能...
    99+
    2023-05-31
    java excel
  • 如何使用Java 实现excel模板导出---多sheet导出?
    实现多个sheet的excel导出功能 效果展示: maven依赖 org.apache.poipoi3.17org.apache.poipoi-ooxml3.17 相关工具类 **此处省略异常处理...
    99+
    2023-10-08
    java spring boot
  • .NET6如何导入和导出EXCEL
    .NET6如何导入和导出EXCEL,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。使用NPOI导入.xlsx遇到“EOF in header”报错,网上找好很多方法,没解决,...
    99+
    2023-06-22
  • 如何将nodejs导出excel
    Excel 是一种常见的办公软件,许多企业和组织都将其用来进行数据分析和处理。在 Web 开发中,经常需要将一些数据导出到 Excel 表格中,以便用户下载和查看。在本文中,我们将介绍如何使用 Node.js 实现将数据导出为 Excel ...
    99+
    2023-05-14
  • java使用EasyExcel导入导出excel
    目录一、准备工作 1、导包二、了解注解 1、常用注解2、@ExcelProperty注解 3、@ColumnWith注解 4、@ContentFontStyle注解 5、@Conte...
    99+
    2024-04-02
  • java导出excel(带图片)
    先看一下导出效果, controller 表头数据一定要放在最前面 List head = Arrays.asList("姓名","年龄","性别","证件类别","证件号","联系电话"...
    99+
    2023-09-14
    java Powered by 金山文档
  • Java如何利用POI实现导入导出Excel表格
    这篇文章主要介绍“Java如何利用POI实现导入导出Excel表格”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java如何利用POI实现导入导出Excel表格”文章能帮助大家解决问题。一、Java...
    99+
    2023-07-06
  • Java导出数据到Excel
    Java导出数据到Excel分3步处理 1、构建Workbook 数据 2、设置Workbook 格式 3、导出到Excel 1、构建Workbook 数据 public static void b...
    99+
    2023-09-04
    java excel 开发语言
  • tp6 thinkphp6 excel导入导出 PHPExcel导入导出excel
    tp6 thinkphp6 Excel导入导出,主要是使用了PHPExcel类库。 php导出excel数字太长尾数变000解决方法 导出时为什么数字字段要加“\t”。是因为,由于数字超过15位,会被显示成0或者加小数点处理。造成这种情况是...
    99+
    2023-08-31
    php 数据库 服务器
  • Java实现导出Excel功能
    文章参考《Qt5开发及实例(第4版)》陆文周 主编 一、建立Qt工程 1、选择类别 2、建立项目名称 3、选择Qt基类及修改名称 4、选择编译器(这边两个都选择,生成两个Deb...
    99+
    2024-04-02
  • Java 如何快速,优雅的实现导出Excel
    目录前言:使用第三方库实现导出Excel使用 Hutool 工具库实现导出Excel:使用 EasyExcel 工具库实现导出Excel:前言: 春节假期刚刚过去,大家是不是已经开...
    99+
    2024-04-02
  • SpringBoot中如何使用POI导入导出Excel
    SpringBoot中如何使用POI导入导出Excel,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1.创建Excel文档HSSFWorkbook workboo...
    99+
    2023-06-19
  • 如何使用koa2完成Excel导入导出
    这篇文章主要介绍了如何使用koa2完成Excel导入导出的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何使用koa2完成Excel导入导出文章都会有所收获,下面我们一起来看看吧。一、安装 node-xlsxn...
    99+
    2023-07-05
  • Java+element实现excel的导入和导出
    目录一、上传excel前端代码二、上传excel后端代码三、下载excel前端代码四、下载excel后端代码本项目是前端vue3,后端springboot开发 需求为:前端导入表格,...
    99+
    2023-05-16
    Java element excel导入和导出 Java excel导入 Java excel导出
  • 使用java如何实现大量导出excel文件
    使用java如何实现大量导出excel文件?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。传统的导出方式会消耗大量的内存,2003每个sheet页最多65536条数据,2007每...
    99+
    2023-05-31
    java 文件导出 excel
  • java中export方法如何实现导出excel文件
    这篇文章将为大家详细讲解有关java中export方法如何实现导出excel文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1.export函数//导出文件接口public String&nb...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作