从数据库中取出数据表,导入并生成excel
@RequestMapping("/numericalStatement1")public void createExcel(HttpServletResponse resp) throws Exception{try {String path = "G:/test.xlsx";// 创建新的Excel 工作簿XSSFWorkbook workbook = new XSSFWorkbook();// 在Excel工作簿中建一工作表,其名为缺省值// 如要新建一名为"用户表"的工作表,其语句为:XSSFSheet sheet = workbook.createSheet("成绩表");// 在索引0的位置创建行(最顶端的行)XSSFRow row = sheet.createRow((short) 0);//在索引0的位置创建单元格(左上端)XSSFCell cell = row.createCell((short) 0);//创建单元格样式CellStyle cellStyle = workbook.createCellStyle();// 设置这些样式 cellStyle.setFillForegroundColor(HSSFColor.SKY_BLUE.index);cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN);cellStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);cellStyle.setBorderRight(HSSFCellStyle.BORDER_THIN);cellStyle.setBorderTop(HSSFCellStyle.BORDER_THIN);cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 定义单元格为字符串类型 cell.setCellType(HSSFCell.CELL_TYPE_STRING);// 在单元格中输入一些内容cell = row.createCell((short) 0);cell.setCellValue("成绩编号");cell.setCellStyle(cellStyle);cell = row.createCell((short) 1);cell.setCellValue("组织架构参数表编号");cell.setCellStyle(cellStyle);cell = row.createCell((short) 2);cell.setCellValue("试卷编号");cell.setCellStyle(cellStyle);cell = row.createCell((short) 3);cell.setCellValue("客观题成绩");cell.setCellStyle(cellStyle);cell = row.createCell((short) 4);cell.setCellValue("主观题成绩");cell.setCellStyle(cellStyle);cell = row.createCell((short) 5);cell.setCellValue("总成绩");cell.setCellStyle(cellStyle);//查询数据库中所有的数据 // ResultMapper mapper = getMapper(ResultMapper.class); // VtUserCriteria cri = new VtUserCriteria(); // cri.createCriteria().andUserEnabledEqualTo(1); List<Result> list = resultService.selectAllResult();/*//第一个sheet第一行为标题XSSFRow rowFirst = sheet.createRow(0);rowFirst.setHeightInPoints(21.75f);*/for (int i = 0; i < list.size(); i++) {row = sheet.createRow((int) i + 1);Result stu = (Result) list.get(i);// 第四步,创建单元格,并设置值row.createCell((short) 0).setCellValue(stu.getId());row.createCell((short) 1).setCellValue(stu.getParaorgleadershipsId());row.createCell((short) 2).setCellValue(stu.getPaperId());row.createCell((short) 3).setCellValue(stu.getObjResult());row.createCell((short) 4).setCellValue(stu.getSubResult());row.createCell((short) 5).setCellValue(stu.getTotalResult());sheet.autoSizeColumn((short) 0); //调整第一列宽度(自适应),只识别数字、字母sheet.autoSizeColumn((short) 1); //调整第二列宽度//调整第三列宽度,有中文,先判断这一列的最长字符串// int length = stu.getPaperId().getBytes().length;// sheet.setColumnWidth((short)2,(short)(length*2*256));sheet.autoSizeColumn((short) 2); //调整第三列宽度sheet.autoSizeColumn((short) 3); //调整第四列宽度sheet.autoSizeColumn((short) 4); //调整第五列宽度sheet.autoSizeColumn((short) 5); //调整第六列宽度/*Font font = workbook.createFont();font.setFontHeightInPoints((short)18); //字体大小sheet.setDefaultRowHeightInPoints(21.75f);font.setFontName("楷体");font.setBoldweight(Font.BOLDWEIGHT_BOLD); //粗体font.setColor(HSSFColor.GREEN.index); //绿字- 字体颜色*/}// 新建一输出文件流FileOutputStream fOut = new FileOutputStream(path);// 把相应的Excel 工作簿存盘 workbook.write(fOut);//清空缓冲区数据 fOut.flush();// 操作结束,关闭文件 fOut.close();System.out.println("文件生成...");} catch (Exception e) {System.out.println("已运行 xlCreate() : " + e);}}
代码引自https://www.cnblogs.com/zhxn/p/7016380.html
转载于:https://www.cnblogs.com/minxiaofei/p/10081073.html
从数据库中取出数据表,导入并生成excel相关推荐
- 关于使用java程序从excel或者数据库中取出建表规则数据,自动生成数据库建表语句(适用于批量建数据库表)
公司开发新系统,需要创建几百个数据库表,建表的规则已经写好放到Excel中,如果手动创建的话需要占用较长的时间去做,而且字段类型的规则又被放到了另一张表,如果手动去一个一个去匹配就很麻烦,所以我先把两 ...
- 如何将Sql Server中的数据表导入到PowerDesigner中
本文主要介绍一下基本工作 如何将在SQL Server中设计好的数据表结构导入到PowerDesigner中. 我采用的是SQL Server 2005跟PowerDesigner15.1版本,首先打 ...
- oracle 表导出pdm文件,如何将数据库中已有表导入到powerDesigner生成pdm文件
1.create new PDM: 2.select database menu; 3.click Reverse Engineer database : 4.then choose your sc ...
- mysql表的组成_数据库中的数据表由什么组成?
在数据库中,数据表是由表名.表中的字段和表的记录三个部分组成的.在建立表之前都必须先设计它的结构,表结构描述了一个表的框架.设计表结构实际上就是定义组成一个表的字段个数,每个字段的名称.数据类型和长度 ...
- php数据库数组json,PHP 从数据库中取出数据并存为Json数据
include 'conn.php'; $sql ="select * from user"; //SQL $result =mysql_query($sql);//执行SQL $ ...
- MySQL数据库中的数据表
1.创建数据表 创建数据表的,使用字符串应该遵循的原则 从速度方面考虑,要选择固定的列,可以使用CHAR类型 要节省空间,使用动态的列,可以使用VARCHAR类型 要将列中的内容限制为一种选择,可以使 ...
- scrapy通过item类直接创建数据库中的数据表
思路如下: 首先在item中写入需要构造的item 将item的key得到,构造dataframe 借助dataframe构造数据表 最后使用sql构造可以在数据库中自增长的主键 完整代码 # Def ...
- SQL Server数据库中创建数据表及数据类型操作应用
创建表 使用的SQL命令:create table 格式: create table table_name ( list_name type() Y|N null yard, ) eg: 创建AM数据 ...
- 如何批量删除mysql的数据库_如何快速批量删除Mysql数据库中的数据表
一个mysql数据库中,是可以同时安装几个网站程序的,在使用中,我们只需要用不同的数据库表前缀来区分就可以了.但随着我们不断调试,那么数据 库中的表,就会一天天的多起来,如一个一个的删除就很麻烦.很辛 ...
最新文章
- R语言为dataframe添加新的数据列(add new columns):使用R原生方法、data.table、dplyr等方案
- Android P 消息
- List中的每个元素,两两为一对(不包括自身)组合
- 再见,Python!骨灰级程序员:用对这个方法,编程能力暴增!
- oracle简单建库基本流程
- Hyperledger Fabric教程(12)--链码chaincode样例
- 在Visualforce页面中使用Visual Flow
- 懂一些数据分析工具,为啥还要考CPDA数据分析师证书?
- [MacromediaFlashMX]破解版下载
- 关闭mongodb数据库 (netstat -lanp | grep “27017“)
- Facebook登陆时遇到的问题
- 哥德巴赫猜想c#语言,哥德巴赫猜想 C#
- 从Netty基础到聊天系统和RPC实战-卷二
- Flash制作雾效果
- 搜狐全体员工遭遇工资补助诈骗,CEO张朝阳回应:没那么严重
- leveldb的sstable-ldb解析
- RS485 通信电路 PCB
- 『现学现忘』Shell编程 — 22、基础正则表达式
- CVPR 2021 审稿意见出了,你也许需要这份学术论文投稿与返修指南
- 实现简单的通信协议(STM32 F411RET6开发版)