1. <span style="font-family:Verdana, Arial, Helvetica, sans-serif;line-height:25.2px;background-color:rgb(255,255,255);">1.首先下载poi-3.6-20091214.jar,下载地址如下:</span>

http://download.csdn.net/detail/evangel_z/3895051

或者使用Maven仓库管理,在pom文件添加坐标

<dependency>
   <groupId>org.apache.poi</groupId>
   <artifactId>poi</artifactId>
   <version>3.15</version>
           </dependency>

2.Member.java   创建一个实体对象

  1. package com.leyooe.common.bean.customizedproperty;
  2. import java.util.Date;
  3. public class Member{
  4. private Integer code;
  5. private String name;
  6. private Integer age;
  7. private Date birth;
  8. public Student(Integer code, String name, Integer age, Date birth) {
  9. super();
  10. this.code = code;
  11. this.name = name;
  12. this.age = age;
  13. this.birth = birth;
  14. }
  15. public Integer getCode() {
  16. return code;
  17. }
  18. public void setCode(Integer code) {
  19. this.code = code;
  20. }
  21. public String getName() {
  22. return name;
  23. }
  24. public void setName(String name) {
  25. this.name = name;
  26. }
  27. public Integer getAge() {
  28. return age;
  29. }
  30. public void setAge(Integer age) {
  31. this.age = age;
  32. }
  33. public Date getBirth() {
  34. return birth;
  35. }
  36. public void setBirth(Date birth) {
  37. this.birth = birth;
  38. }
  39. }

3.CreateSimpleExcelToDisk.java

  1. package com.leyooe.otw.api.file;
  2. import java.io.FileOutputStream;
  3. import java.text.SimpleDateFormat;
  4. import java.util.ArrayList;
  5. import java.util.List;
  6. import org.apache.poi.hssf.usermodel.HSSFCell;
  7. import org.apache.poi.hssf.usermodel.HSSFCellStyle;
  8. import org.apache.poi.hssf.usermodel.HSSFRow;
  9. import org.apache.poi.hssf.usermodel.HSSFSheet;
  10. import org.apache.poi.hssf.usermodel.HSSFWorkbook;
  11. import com.leyooe.common.bean.customizedproperty.Member;
  12. public class CreateSimpleExcelToDisk
  13. {
  14. /**
  15. * @功能:手工构建一个简单格式的Excel
  16. */
  17. private static List<Member> getMember() throws Exception
  18. {
  19. List list = new ArrayList();
  20. SimpleDateFormat df = new SimpleDateFormat("yyyy-mm-dd");
  21. Member user1 = new Member(1, "熊大", 24, df.parse("1993-08-28"));
  22. Member user2 = new Member(2, "熊二", 23, df.parse("1994-08-19"));
  23. Member user3 = new Member(3, "熊熊", 24, df.parse("1983-11-22"));
  24. list.add(user1);
  25. list.add(user2);
  26. list.add(user3);
  27. return list;
  28. }
  29. public static void main(String[] args) throws Exception
  30. {
  31. // 第一步,创建一个webbook,对应一个Excel文件
  32. HSSFWorkbook wb = new HSSFWorkbook();
  33. // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
  34. HSSFSheet sheet = wb.createSheet("学生表一");
  35. // 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
  36. HSSFRow row = sheet.createRow((int) 0);
  37. // 第四步,创建单元格,并设置值表头 设置表头居中
  38. HSSFCellStyle style = wb.createCellStyle();
  39. style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
  40. HSSFCell cell = row.createCell((short) 0);
  41. cell.setCellValue("学号");
  42. cell.setCellStyle(style);
  43. cell = row.createCell((short) 1);
  44. cell.setCellValue("姓名");
  45. cell.setCellStyle(style);
  46. cell = row.createCell((short) 2);
  47. cell.setCellValue("年龄");
  48. cell.setCellStyle(style);
  49. cell = row.createCell((short) 3);
  50. cell.setCellValue("生日");
  51. cell.setCellStyle(style);
  52. // 第五步,写入实体数据 实际应用中这些数据从数据库得到,
  53. List list = CreateSimpleExcelToDisk.getMember();
  54. for (int i = 0; i < list.size(); i++)
  55. {
  56. row = sheet.createRow((int) i + 1);
  57. Member stu = (Member) list.get(i);
  58. // 第四步,创建单元格,并设置值
  59. row.createCell((short) 0).setCellValue((double) stu.getCode());
  60. row.createCell((short) 1).setCellValue(stu.getName());
  61. row.createCell((short) 2).setCellValue((double) stu.getAge());
  62. cell = row.createCell((short) 3);
  63. cell.setCellValue(new SimpleDateFormat("yyyy-mm-dd").format(stu
  64. .getBirth()));
  65. }
  66. // 第六步,将文件存到指定位置
  67. try
  68. {
  69. FileOutputStream fout = new FileOutputStream("E:/Members.xls");
  70. wb.write(fout);
  71. fout.close();
  72. }
  73. catch (Exception e)
  74. {
  75. e.printStackTrace();
  76. }
  77. }
  78. }

excel表格就被保存到指定位置了。

  1. 替换第六步可实现下载
    1. // 第六步,下载excel
    2. OutputStream out = null;
    3. try {
    4. out = response.getOutputStream();
    5. String fileName = "enroll.xls";// 文件名
    6. response.setContentType("application/x-msdownload");
    7. response.setHeader("Content-Disposition", "attachment; filename="
    8. + URLEncoder.encode(fileName, "UTF-8"));
    9. wb.write(out);
    10. } catch (Exception e) {
    11. e.printStackTrace();
    12. } finally {
    13. try {
    14. out.close();
    15. } catch (IOException e) {
    16. e.printStackTrace();
    17. }
    18. }

JAVA实现创建Excel表并导出(转发)的更多相关文章

  1. HSSFWorkBooK用法 —Excel表的导出和设置

    HSSFWorkBooK用法 —Excel表的导出和设置 2013年02月21日 ⁄ 综合 ⁄ 共 9248字 ⁄ 字号 小 中 大 ⁄ 评论关闭 public ActionResult excelP ...

  2. POI框架实现创建Excel表、添加数据、读取数据

    public class TestPOI2Excel {//创建2003版本Excel用此方法 @Test public void testWrite03Excel() throws Exceptio ...

  3. java POI创建Excel示例(xslx和xsl区别 )

    Java用来处理office类库有很多,其中POI就是比较出名的一个,它是apache的类库,现在版本到了3.10,也就是2014年2月8号这个版本. 在处理PPT,Excel和Word前,需要导入以 ...

  4. HSSFWorkBooK用法 ---Excel表的导出和设置

    public ActionResult excelPrint() { HSSFWorkbook workbook = new HSSFWorkbook();// 创建一个Excel文件 HSSFShe ...

  5. Java版将EXCEL表数据导入到数据库中

    1.采用第三方控件JXL实现 try { //实例化一个工作簿对象 Workbook workBook=Workbook.getWorkbook(new File("F://qzlx.xls ...

  6. java+jxls利用excel模版进行导出

    大多时候会出现需要导出excel的功能,利用poi可以实现简单的导出,可以说poi的功能非常强大可以做到细节的定制化操作,但相对于在office操作excel,利用poi完全生成excel会显得非常复 ...

  7. 如果从excel表中导出insert-sql

    =CONCATENATE("INSERT INTO p_act_lottery(actId,status,grantWay,createTime,invalidTime,amount,pri ...

  8. 【ITOO 1】将List数据导出Excel表

    需求描述:在课表导入的时候,首先给用户提供模板(excel),然后将用户填写好的数据读取到list集合中.再进行判空处赋值处理,以及去重处理.这篇博客,主要介绍读取excel表和导出excel表的方法 ...

  9. 使用Java创建Excel,并添加内容

    使用Java创建Excel,并添加内容 一.依赖的Jar包 jxl.jar,使用jxl操作Excel Jxl是一个开源的Java Excel API项目,通过Jxl,Java可以很方便的操作微软的Ex ...

随机推荐

  1. SepicalJudge

    原文:http://www.cnblogs.com/chouti/p/5752819.html Special Judge:当正确的输出结果不唯一的时候需要的自定义校验器 首先有个框架 #includ ...

  2. Hadoop安装—— WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platf

    今天在安装hadoop完成测试创建用户目录失败在网上找到了原因记录一下原文地址 http://blog.csdn.net/l1028386804/article/details/51538611 配置 ...

  3. luogu3605晋升者计数

    https://www.zybuluo.com/ysner/note/1282069 题面 给一颗带点权的树,求每个点的子树中比该点权值大的点的个数. \(n\leq10^5\) 解析 首先有个很无脑 ...

  4. RDA 重现率

    文件目录: timing_info/AspectRatioOverscan&TimingTool/Aspect_Ratio_Overscan&Timing_Tool_330.xls 重 ...

  5. POJ 1659 Frogs' Neighborhood (贪心)

    题意:中文题. 析:贪心策略,先让邻居多的选,选的时候也尽量选邻居多的. 代码如下: #pragma comment(linker, "/STACK:1024000000,102400000 ...

  6. CSS3 核心知识面试题

    一种常见利用伪类清除浮动的代码 .clearfix:after { content:"."; //这里利用到了content属性 display:block; height:; v ...

  7. NetCore Netty 框架 BT.Netty.RPC 系列随讲 —(前序) REST API 与 RPC 经典网络基础服务架构

    在服务体系架构内,我们所知道的,有两种请求模型: Http 请求模型,以及 RPC 请求模型.因此,在一个互联网请求模型架构上,都是这两种的请求模型的向互组合. 下面给出两种常见的互联网经典基础架构图 ...

  8. [转]Windows Azure平台简介(一):定位与产品结构

    本文转自:http://blog.csdn.net/azurechina/article/details/5592236 http://blogs.msdn.com/b/azchina/archive ...

  9. Geoserver常见问题总结

    原文地址 :http://blog.csdn.net/mygisforum/article/details/8249093 http://www.cnblogs.com/wang985850293/p ...

  10. 这样的设计是否有违背MVC设计原则??

    MVC 皆知为 Model-View-Controller 请求模型-〉Client发现请求-〉Controller接收+处理-〉返回Model给前端-〉前端接收处理模型Result 但是最近发现一个 ...