java-面向对象读取excel数据之原理

      使用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中的数据。

    

      




 


   

    

你可能感兴趣的:(java,经验之谈)