首页 > 其他分享 >导出数据

导出数据

时间:2022-10-20 17:03:07浏览次数:48  
标签:style sheet cells 导出 cell createCell setCellValue 数据

导出表格
void export(){
//先从缓存拿数据
// Object commodity = redisUtil.get(String.format(RedisKeyConstant.PRODUCT_INFO, "202112150256", "*"));
Page page = redisUtil.redisPage(new Page(1, 500), String.format(RedisKeyConstant.PRODUCT_INFO, "202112150256", "*"));
// System.out.println(new Gson().toJson(page));
//1.先转换成map
Map map = JSON.parseObject(String.valueOf(new Gson().toJson(page)), Map.class);
//2.取出数组
JSONArray records = (JSONArray) map.get("records");
// 定义一个新的工作簿
XSSFWorkbook wb = new XSSFWorkbook();
// 创建一个Sheet页
XSSFSheet sheet = wb.createSheet("First sheet");
// 创建表头样式
XSSFCellStyle headersStyle = wb.createCellStyle();
// 表头内容对齐⽅式:居中
headersStyle.setAlignment(HorizontalAlignment.CENTER);
//设置行高
sheet.setDefaultRowHeight((short) (2 * 256));
//设置列宽
sheet.setColumnWidth(0, 24000);
sheet.setColumnWidth(1, 4000);
sheet.setColumnWidth(2, 4000);
sheet.setColumnWidth(3, 4000);
sheet.setColumnWidth(4, 6000);
sheet.setColumnWidth(5, 4000);
XSSFFont font = wb.createFont();
font.setFontName("宋体");
font.setFontHeightInPoints((short) 16);
//创建样式对象
XSSFCellStyle style = wb.createCellStyle();
//设置样式对齐方式:水平垂直居中
style.setAlignment(HorizontalAlignment.CENTER);
style.setVerticalAlignment(VerticalAlignment.CENTER);
//设定背景颜色
style.setFillForegroundColor(IndexedColors.PINK.getIndex());
//设定填充单色
style.setFillPattern(FillPatternType.SOLID_FOREGROUND);
//获得表格第一行
XSSFRow row = sheet.createRow(0);
//根据需要给第一行每一列设置标题
XSSFCell cell = row.createCell(0);
cell.setCellValue("商品名称");
cell.setCellStyle(style);
cell = row.createCell(1);
cell.setCellValue("型号");
cell.setCellStyle(style);
cell = row.createCell(2);
cell.setCellValue("单品编号");
cell.setCellStyle(style);
cell = row.createCell(3);
cell.setCellValue("主流电商价格");
cell.setCellStyle(style);
cell = row.createCell(4);
cell.setCellValue("旗舰店或自营店价格");
cell.setCellStyle(style);
cell = row.createCell(5);
cell.setCellValue("状态");
cell.setCellStyle(style);
//为指定行设定样式
// row.setRowStyle(style);
//为指定单元格设定样式
// cell.setCellStyle(style);
XSSFRow rows;
XSSFCell cells;
// System.out.println(records);
//循环拿到的数据给所有行每一列设置对应的值
for (int i = 0; i < records.size(); i++) {
Commodity commodity = JSONUtil.toBean(JSONUtil.parseObj(records.get(i)), Commodity.class);
// 在这个sheet页里创建一行
rows = sheet.createRow(i + 1);
String itemName = commodity.getItemName();
String brandName = commodity.getBrandName();
String bid = commodity.getId();
String price = commodity.getSellPrice();
String jdPrice = commodity.getJdPrice();
cells = rows.createCell(0);
cells.setCellValue(itemName);
cells = rows.createCell(1);
cells.setCellValue(brandName);
cells = rows.createCell(2);
cells.setCellValue(bid);
cells = rows.createCell(3);
cells.setCellValue(price);
cells = rows.createCell(4);
cells.setCellValue(jdPrice);
cells = rows.createCell(5);
cells.setCellValue("已上架");
}
try {

String src = "D:/a.xls";
File file = new File(src);
FileOutputStream fileOutputStream = new FileOutputStream(file);
wb.write(fileOutputStream);
wb.close();
fileOutputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}

标签:style,sheet,cells,导出,cell,createCell,setCellValue,数据
From: https://www.cnblogs.com/123sougou/p/16810485.html

相关文章

  • 我用《觉醒年代》做数据分析!
    作者:牧小熊,华中农业大学,Datawhale成员最近有同学和我说《觉醒年代》好好看,于是我后知后觉地查了一下,不查不知道,这部剧豆瓣评分9.3,微博讨论度26亿+。《觉醒年代》都是哪些人......
  • 开箱即用的数据缓存服务|EMQX Cloud 影子服务应用场景解析
    在物联网业务高速迭代的今天,快速连接物联网设备与平台应用,实现业务快速落地与市场验证,是很多企业塑造核心竞争力、实现业务创新的关键。​​EMQXCloud​​作为一站式运维......
  • 一种简单的视图层数据查询模块数据流--视图、路由、API
    背景简介实现前台项目的搜索页时,通常会将查询参数直接传给路由并显示在顶部的地址。params参数可以路径的一部分,因此可以理解;不过保留query的目的暂不清楚,对SSR模......
  • CentOs 7 安装mysql(5.7.27)数据库
    CentOs7安装MySQL1.查看是否已经安装Mysql[root@srv01~]# rpm-qa|grepmysql# 如果你查看出来有东西,可以使用下面命令将其删除[root@srv01~]# ......
  • 数据行业非完全入门指南!
    作者:桔了个仔,南洋理工大学,Datawhale成员之前给从传统制造业转行的数据行业的朋友列的一个笔记,这里把原文贴出来。现在看来概括性不够,不过适合对大数据没有太多了解但想入行......
  • jmeter使用CSV文件保存参数,读取为传参(CSV数据文件设置)
    为了模拟多用户操作系统,可以把用户名、密码等需要传递的参数保存于CSV文件,自动读取即可   这里我使用来读取的是token,批量保存下拉短期不过期的token ......
  • 【数据结构(c语言版)】树的概念以及结构
    数据结构之树的概念以及结构1.树的概念树是一种非线性的数据结构,是由n(n>=0)有限节点的组成的一个具有线性关系的集合。叫树的原因是因为它看起来像是一颗倒挂的树,只不过是根......
  • Oracle数据库技术之PL/SQL语法和存储过程
    一、课程目标PLSQL语法(掌握)存储函数(了解)存储过程(掌握)JAVA来调用oracle函数或过程(掌握)二、PL/SQL基础语法2.1什么是PL/SQL PL/SQL(ProcedureLanguage/SQL)是Oracle对sql......
  • #打卡不停更#三方库移植之NAPI开发[2]C/C++与JS的数据类型转换
    在《三方库移植之NAPI开发[1]—HelloOpenHarmonyNAPI》通过一个HelloOpenHarmonyNAPI样例讲述了NPAI接口开发基础知识。本文在其基础上修改hellonapi.cpp文件,介绍JS类型......
  • 【考点18】第十六章(上):数据库设计基础
    【考点1】数据库的基本概念数据(Data)是数据库存储的基本对象,是描述事物的符号记录。数据库(DB)是长期储存在计算机内、有组织的、可共享的大量数据的集合,它具有统一的结构形式......