java web 读取数据库数据写入Excel返回浏览器下载

 1 @RequestMapping(value = "/download", method = RequestMethod.GET)
 2     public void downstudents(HttpServletRequest request, HttpServletResponse response) throws IOException {
 3         // 一、从后台拿数据
 4         List<Dept> list = null;
 5         list=ds.list();
 6         try {
 7             // 二、 数据转成excel
 8             request.setCharacterEncoding("UTF-8");
 9             response.setCharacterEncoding("UTF-8");
10             response.setContentType("application/x-download");
11
12             String fileName = "dept.xls";
13             fileName = URLEncoder.encode(fileName, "UTF-8");
14             response.addHeader("Content-Disposition", "attachment;filename=" + fileName);
15             // 第一步:定义一个新的工作簿
16             HSSFWorkbook wb = new HSSFWorkbook();
17             // 第二步:创建一个Sheet页
18             HSSFSheet sheet = wb.createSheet("deptsheet");
19             HSSFCellStyle style=wb.createCellStyle();
20             style.setAlignment(HSSFCellStyle.ALIGN_CENTER);//设置居中(无效)
21             sheet.setDefaultRowHeight((short) (256));// 设置行高
22             sheet.setColumnWidth(0, 2000);// 设置列宽
23             sheet.setColumnWidth(1, 5000);
24             sheet.setColumnWidth(2, 5500);
25             sheet.setColumnWidth(3, 5500);
26
27             HSSFFont font = wb.createFont();
28             font.setFontName("宋体");//设置字体
29             font.setFontHeightInPoints((short) 16);//设置文字大小
30
31             HSSFRow row = sheet.createRow(0);
32             HSSFCell cell = row.createCell(0);
33             cell.setCellValue("序号");
34             cell = row.createCell(1);
35             cell.setCellValue("部门编号");
36             cell = row.createCell(2);
37             cell.setCellValue("部门名称");
38             cell = row.createCell(3);
39             cell.setCellValue("地址");
40
41             HSSFRow rows;
42             HSSFCell cells;
43             for (int i = 0; i < list.size(); i++) {
44                 // 第三步:在这个sheet页里创建一行
45                 rows = sheet.createRow(i + 1);
46                 // 第四步:在该行创建一个单元格
47                 cells = rows.createCell(0);
48                 // 第五步:在该单元格里设置值
49                 cells.setCellValue(i+1);
50                 cells = rows.createCell(1);
51                 cells.setCellValue(list.get(i).getDeptno());
52                 cells = rows.createCell(2);
53                 cells.setCellValue(list.get(i).getDname());
54                 cells = rows.createCell(3);
55                 cells.setCellValue(list.get(i).getLoc());
56
57             }
58
59             OutputStream out = response.getOutputStream();
60             wb.write(out);
61             out.close();
62             wb.cloneSheet(0);
63         } catch (IOException e) {
64             e.printStackTrace();
65         }
66     }

javaCode

原文地址:https://www.cnblogs.com/lljboke/p/9601066.html

时间: 2024-10-02 02:20:14

java web 读取数据库数据写入Excel返回浏览器下载的相关文章

nodejs实现,每天定时自动读取数据库数据-生成excel表格-发送给老板邮箱(promise版)

async版:http://blog.csdn.net/zzwwjjdj1/article/details/52129192 写这个版本主要是,promise比较好用,而且,现在已经是nodejs的内置对象了,无须再引用第三方库 -- 需要的工具 数据库    mysql 连接数据库模块 mysql  基本封装: http://blog.csdn.net/zzwwjjdj1/article/details/51991348 自动运行模块   node-schedule 基本使用 : http:/

Java导出页面数据或数据库数据至Excel文件并下载,采用JXL技术,小demo(servlet实现)

public class ExportExcelServlet extends HttpServlet { /** * */ private static final long serialVersionUID = 1L; @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp);

《程序实现》从xml、txt文件里读取数据写入excel表格

直接上码 import java.io.BufferedReader; import java.io.DataInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; impo

Java将数据库数据导入EXCEL

一般的数据库数据怎么导入excel中呢??这让人非常疑惑,今天我找到了一个方法能够实现 须要导入一个第三方包下载地址 详细内容例如以下: 里面含有指导文档,index.html里面含有怎样读取数据库文件到excel和excel数据到数据库中. 主要用到一个包 将这个包复制到项目里面就能够了. 先做一个简单版本号的helloword <span style="white-space:pre"> </span>public void mkexcel() throws

Java读取数据库数据生成柱状图

此案例是用swing显示数据的.需要引入jfreechart相关包,不同版本可能包不相同,本人用的是 此案例在ssi框架下会报错,不用框架就没问题. Java后台逻辑代码: public class BarChart { ChartPanel frame1; public BarChart() { CategoryDataset dataset = getDataSet(); JFreeChart chart = ChartFactory.createBarChart3D("水果",

读取数据库数据,并将数据整合成3D饼图在jsp中显示

首先我将生成饼图的方法独立写成一个PieChar.java类,详细代码如下:(数据库需要自己建,如有需要的话) 1 import java.io.IOException; 2 import java.sql.SQLException; 3 import org.jfree.chart.ChartFactory; 4 import org.jfree.chart.JFreeChart; 5 import org.jfree.data.general.DefaultPieDataset; 6 7 p

JSP详细篇——Java Web的数据库操作

Java Web的数据库操作 JDBC技术 JDBC简介 JDBC是Java程序曹祖数据库的API,也是Java程序与数据库交互的一门技术.JDBC是java操作数据库的规范,由一组用Java语言编写的类和接口组成,他对数据库的操作提供了基本的方法.使用JDBC操作数据库,需要数据库厂商提供数据库的驱动程序. JDBC在Java程序与数据库之前起到了桥梁的作用,有了JDBC就可以方便的与各种数据库进行交互,不必为某一个特定的数据库指定专门的访问程序. JDBC连接数据库的过程 JDBC操作数的开

Java使用POI实现数据导出excel报表

在上篇文章中,我们简单介绍了java读取word,excel和pdf文档内容 ,但在实际开发中,我们用到最多的是把数据库中数据导出excel报表形式.不仅仅简单的读取office中的数据.尤其是在生产管理或者财务系统中用的非常普遍,因为这些系统经常要做一些报表打印的工作.而数据导出的格式一般是EXCEL或者PDF .所以今天我们来简单看一下利用Apache  POI实现数据库中数据导出excel报表.在java中有很多实现数据导出excel报表的第三方jar包.但在比较了一下感觉还是POI相对来

LZ从Java Web转大数据,并且成功拿到上市公司Offer,工资直接涨了9K+

Before 本文的目的是为你(有一定编程基础的同学仔)提供一些想打算转大数据的参考: 如果你是大数据工程师,不太适合你进行进阶学习: 如果你是零编程基础同学仔,你可以参考我之前写的blog,建议先把基础打牢,再去学习大数据: 如果你不是攻城狮,那么你可以当做一个故事即可. 大家好,我是Hongten 今天我要给大家分享一下我的个人经历,我从Java Web转大数据,并且成功拿到上市公司Offer,工资直接涨了9K+ 我大二的时候,就开始接触Java,之前也接触了一些Android的知识,但是最