java大数据处理.doc_第1页
java大数据处理.doc_第2页
java大数据处理.doc_第3页
java大数据处理.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

java大数据处理-大量数据到Excel 在Java Web开发中,经常需要导出大量的数据到Excel,使用POI、JXL直接生成Excel,很容易就造成内存溢出了。1、有一种方式,就是把数据写成csv格式文件。1)csv文件可以直接用Excel打开。2)写csv文件的效率和写txt文件的效率一样高。3)同样的数据内容,生成的csv文件的大小远远小于生成的Excel文件。从以上优点就可以看出生成csv文件消耗的内存绝对小于生成Excel文件。2、按一定的格式去生成csv文件,在Excel中打开的时候就是完整的行和列格式。例如:在Excel中的格式:那么,在csv文件中格式就必须为:就是说,列和列之间,需要用英文输入法状态下的逗号,间隔:风云第一刀,古龙。3、在Struts2中导出数据到Excel,一个简单的例子。CsvAction,生成csv文件,并且将生成的csv文件完整路径传递到下载Action。Java代码1. packagecn.luxh.struts2.action;2. 3. importjava.io.FileWriter;4. importjava.io.IOException;5. importjava.text.SimpleDateFormat;6. importjava.util.ArrayList;7. importjava.util.Date;8. importjava.util.List;9. 10. importcn.luxh.struts2.entity.Novel;11. 12. importcom.opensymphony.xwork2.ActionSupport;13. 14. 15. /*16. *导出数据到csv文件17. *authorLuxh18. */19. publicclassCsvActionextendsActionSupport20. 21. privatestaticfinallongserialVersionUID=-2862629695443964658L;22. 23. /*24. *包含完整路径的文件名25. *传递给下载Action进行下载26. */27. privateStringfileName;28. 29. 30. /*31. *导出数据32. */33. publicStringexportData2CSV()34. Listnovels=getNovels();35. fileName=D:/novels.csv;36. writeData2CSV(novels,fileName);37. returnSUCCESS;38. 39. 40. 41. /*42. *构造一些数据43. *实际上可能是从数据库中把大量的数据查出来44. */45. privateListgetNovels()46. Listnovels=newArrayList();47. 48. Novelnovel1=newNovel(风云第一刀,古龙,newDate();49. Novelnovel2=newNovel(书剑恩仇录,金庸,newDate();50. Novelnovel3=newNovel(陆小凤传奇,古龙,newDate();51. Novelnovel4=newNovel(鹿鼎记,金庸,newDate();52. 53. novels.add(novel1);54. novels.add(novel2);55. novels.add(novel3);56. novels.add(novel4);57. 58. returnnovels;59. 60. 61. /*62. *把数据按一定的格式写到csv文件中63. *paramnovels数据集合64. *paramfileNamecsv文件完整路径65. */66. publicvoidwriteData2CSV(Listnovels,StringfileName)67. FileWriterfw=null;68. try69. fw=newFileWriter(fileName);70. /输出标题头71. /注意列之间用,间隔,写完一行需要回车换行rn72. Stringtitle=序号,小说名称,作者,出版日期rn;73. fw.write(title);74. 75. Stringcontent=null;76. SimpleDateFormatsdf=newSimpleDateFormat(yyyy-MM-dd);77. for(inti=0;inovels.size();i+)78. Novelnovel=novels.get(i);79. /注意列之间用,间隔,写完一行需要回车换行rn80. content=(i+1)+,+novel.getName()+,+novel.getAuthor()+,+sdf.format(novel.getPublishDate()+rn;81. fw.write(content);82. 83. catch(Exceptione)84. e.printStackTrace();85. thrownewRuntimeException(e);86. finally87. try88. if(fw!=null)89. fw.close();90. 91. catch(IOExceptione)92. e.printStackTra

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论