Excel导入(基于servlet)

框架用多了反而对java的一些基础不太会了,今天来回顾一下excel的文件上传基于servlet。话不多说,直接进入正题。

1:将commons-fileupload commons-io加入至项目中(commons--logging,log4j)
2:下载poi所需要的jar包 [url]http://poi.apache.org/download.html[/url]
[img]http://dl2.iteye.com/upload/attachment/0101/7288/72c2d999-205e-3f83-a5a7-8b505d652728.jpg[/img]
[img]http://dl2.iteye.com/upload/attachment/0101/7290/b75207c0-8daa-3b2a-aa59-470333926b56.jpg[/img]
如上传的Excel为2007版的则将ooxml-lib中的jar包导入至项目中

3:poi中几个核心的接口, Workbook Sheet Row Cell,如Excel2003用HSSFWorkBook,Excel2007的用XSSFWorkBook创建工作簿用多态获取HSSFWorkBook,XSSFWorkBook的Sheet Row Cell比较方便

4:将前台页面表单的enctype的值改为multipart/form-data
[img]http://dl2.iteye.com/upload/attachment/0101/7292/180b3bb6-53ab-3f12-9575-730110ad4e9a.jpg[/img]

5:接下来看看定义了一些什么类
[img]http://dl2.iteye.com/upload/attachment/0101/7294/98d57c5d-d311-3c28-acba-33ac319062bb.jpg[/img]
实体类一枚,UploadServlet一枚,Excel上传工具类一枚,Excel工具类中的有两个方法,1将Excel保存至本地磁盘2解析Excel,下面是这两个方法的具体内容

[img]http://dl2.iteye.com/upload/attachment/0101/7296/d0aab47f-be7f-3819-a0e5-a6ac4ae6a43c.jpg[/img]

[img]http://dl2.iteye.com/upload/attachment/0101/7298/6d78ea66-79f4-32ee-9cb9-dcce101513ad.jpg[/img]

6:接下来来看看servlet,里面的内容无非就是将上传的文件获取出来
[img]http://dl2.iteye.com/upload/attachment/0101/7300/47f314f7-7e2c-3793-9170-b423e27cdb78.jpg[/img]

7:将项目部署到容器中,启动服务器,首先我们来上传一个excel文件,第一页里面有内容,第二页有内容,第三页无内容。

[img]http://dl2.iteye.com/upload/attachment/0101/7302/ea21f457-0cc5-3fe8-9187-37bed6ed5019.jpg[/img]

[img]http://dl2.iteye.com/upload/attachment/0101/7304/8b7eafaa-bb4f-3609-94b2-de4a085510bf.jpg[/img]
来看看控制台输出的内容
[img]http://dl2.iteye.com/upload/attachment/0101/7306/033e0dce-3c71-3f7a-9ee1-d31ab2db94d7.jpg[/img]

控制台显示了excel中第一,二页的内容,当然第三页没有内容就是白板了,哈哈。
接下来我们来上传两个excel文件,这两个文件中分别都有三个sheet页,每个sheet中都有内容
控制台正常输出两个excel文件中的内容


[img]http://dl2.iteye.com/upload/attachment/0101/7308/7ea27922-86cd-3a3f-9f3d-03f435a202cb.jpg[/img]

[img]http://dl2.iteye.com/upload/attachment/0101/7310/7fcd1f97-308b-3e6f-b563-1231eab11c3b.jpg[/img]

至此一个简单的基于servlet的Excel导入完成了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值