java-面向对象读取excel数据之原理
2011-09-14 20:22
232 查看
使用java语言读取excel数据是一件频繁的事情。一般的开发人员都会选用 JXL(java excel api) 的开源框架进行轻松的读取excel 数据文件,但是,在实际应用中,并没这么简单。
如果对excel 有以下要求,可以流程就变得复杂了:
1.指定的excel表单名称进行读取
2.如果有标题,还要检查标题是否符合要求(标题并不总是在第一行)
3.指定某些列不能为空值,或者不能重复,或者符合某个正则表达式,或者在枚举范围内。
.......
遇到以上问题,用java代码也可以轻易实现,但是,当这些要求重复出现时,编程就变得繁琐而无技术含量了。
有人想到,可以把这些共性问题抽象出来,写个通用的类来解决。没错,这可以解决以上方法,但是,读取excel文件,最终还是要通过编程方式。
其实,我们可以通过配置方式来解决以上的所有问题 。
实现原理:
一个 excel 表单,就相当一个小型的数据库,既然hibernate 实现了面向对象的操作数据库,我们也可以实现面向对象的操作excel文件。
一个excel表中的一个表单结构 一般和一个bean 对象一致,通过xml 配置把excel表结构和bean对象的属性关联起来,使得每一行数据可以初始化一个bean对象。
我们可以通过对JXL进一步封装,用面向对象的原理来读取excel文件!
实现方法:
(1)使用一个映射文件,配置校验信息和映射信息(如hibernate中的映射文件)。
(3)根据映射文件,读取excel中的数据。
如果对excel 有以下要求,可以流程就变得复杂了:
1.指定的excel表单名称进行读取
2.如果有标题,还要检查标题是否符合要求(标题并不总是在第一行)
3.指定某些列不能为空值,或者不能重复,或者符合某个正则表达式,或者在枚举范围内。
.......
遇到以上问题,用java代码也可以轻易实现,但是,当这些要求重复出现时,编程就变得繁琐而无技术含量了。
有人想到,可以把这些共性问题抽象出来,写个通用的类来解决。没错,这可以解决以上方法,但是,读取excel文件,最终还是要通过编程方式。
其实,我们可以通过配置方式来解决以上的所有问题 。
实现原理:
一个 excel 表单,就相当一个小型的数据库,既然hibernate 实现了面向对象的操作数据库,我们也可以实现面向对象的操作excel文件。
一个excel表中的一个表单结构 一般和一个bean 对象一致,通过xml 配置把excel表结构和bean对象的属性关联起来,使得每一行数据可以初始化一个bean对象。
我们可以通过对JXL进一步封装,用面向对象的原理来读取excel文件!
实现方法:
(1)使用一个映射文件,配置校验信息和映射信息(如hibernate中的映射文件)。
(3)根据映射文件,读取excel中的数据。
相关文章推荐
- java 使用POI读取excel数据
- JAVA中读取和导出数据到EXCEL的方法
- Java操作Excel之理解JXL--读取Excel模板动态写入数据并生成Excel
- java读取Excel中的数据
- java利用注解实现简单的excel数据读取
- 用Java读取Excel表数据和将数据导出成Excel表
- java读取Excel指定格式的数据
- Java, 如何从Excel中读取数据到文件中
- java读取Excel指定sheet页或全部sheet页数据(含2003和2007版本)
- java读取excel中单元格数据导入数据库存在问号
- java的poi技术读取Excel数据到MySQL
- java代码读取excel数据
- POI实战-java开发excel详解之常用操作-单元格合并与数据读取
- POI实战-java开发excel详解(第二章 单元格各类型数据读取)
- JXL 读取 Excel java中jxl导出数据到excel的例子 上传文件
- Java POI读取/导出Excel数据
- 自己封装的Java excel数据读取方法
- 《Java开发有一说一》——Java读取Excel文件中的数据
- Java读取excel中的数据
- 将后台数据读取到前台的EXCEL文件中去,用javascript实现,asp.net,javacript(发一个原创)