欢迎光临
我们一直在努力

Excel教程_通用Excel导入设计

Excel教程_通用Excel导入设计:

摘要:有时分我们的数据寄存在Excel中(特别是关于用户来说更喜欢运用Excel搜集一些常用数据),而系统又需求这些数据来处置其他业务,那么此时我们就需求将这些数据导入到数据库中。但是鉴于Excel的款式多种多样,因而每次导入时都必需书写很多反复的代码。很明显关于一个软件开发者做这些反复劳动是一件很无趣的事情。那么怎样来寻中一种通用的办法呢?今天我们就一块看一下如何来处理这个问题。

主要内容

  1. Excel操作组件的选择
  2. 总体设计思绪
  3. 配置文件设计
  4. 类设计
  5. 编码完成
  6. 一点补充
  7. 简单的测试
  8. 总结

一、Excel操作组件的选择

在开端今天的主题之前我们先简单的看一个根底的问题,那就是如何停止Excel的读写。关于Excel的读写操作目前主要分为:1.Oledb数据库衔接方式2.运用Excel.exe Com组件3.运用第三方控件。详细哪种方式好我们要根据详细状况而定,关于第一种方式则请求excel表格必需是想数据库中的表一样标准,例如假如excel牵扯到兼并单元格的状况就很难处置了。关于第二种方式则请求用户必需依照Excel,而且其效率比拟低。思索到我们的需求,所以这里选择第三种方式来操作Excel。操作Excel的第三方控件比拟多,常见的如NPOI、myxls、Aspose.Cells等。前两者都是开源的,并且NPOI除了写Excel功用比拟强之外关于Excel读取也是非常优秀(myxls读取excel不如NPOI)。Aspose.Cells是一款商业控件,其操作便当性当然也是非常强大的,而且Aspose是一个系列组件,不只有操作Excel的组件还有关于word、ppt、pdf、flash等操作组件。这里由于项目开发中运用的是Aspose.Cells,因而下面的例子中我们就拿Aspose.Cells来停止Excel操作(大家能够去找破解版或者运用NPOI,当然也能够用myxls等)。

二、总体设计思绪

我们去设计通用Excel的目的就是为了防止反复工作,也就是说不用由于Excel的款式、数据等变化而重新从零做起、反复劳动。因而我们就必需抽取一个通用的东西出来,运用时只需求关注相关的业务而不用过度关注相关excel操作和存储。再简单一点就是封装共同点,暴漏个性点。思索到这种状况,我们能够运用配置文件的方式来处理这个问题。在配置文件中我们配置Excle要导入的表、字段等信息,在停止导入时再根据配置文件将数据导入到数据库中。这样一来,在需求停止Excel导入时只需求为某个或多个excel配置一个xml文件,然后调用相关的类就能够完成整个excel导入工作了。

补充:通用的局限性

在这里阐明一下,固然我们设计的是一个通用的Excel导入程序,但是这里的"通用"只是相对来说的,并不是思索了一切Excel的状况,由于Excel的设计状况非常的复杂多样,要将一切的状况都思索进去是一个漫长的过程。我们这里的程序只思索关于单sheet导入一个或多个表中的状况,并且不思索包含统计行的状况(能够包含兼并行、代码表字段等)。

三、配置文件设计

既然思索运用xml配置的方式来设计通用Excel导入,因而如何设计好xml也就成了设计的重点。关于单表导入(一个Excel主要导入到一个数据库表中,当然这并不扫除牵扯其他代码表的状况)我们的配置文件无论以数据库为根底设计(主要是根据数据库表构造)还是以Excel(主要是根据Excel格式设计)为根底设计都能够,但是假如是多表导入(也就是一个Excel能够导入到几张表中的状况)的话思索其复杂性还是以数据库为根底更为适宜。因而思索到这种状况,我们整个配置设计会以数据库表构造为根底来设计。最终我们的设计样例如下:

Excel教程_通用Excel导入设计代码

未经允许不得转载:金榜网 » Excel教程_通用Excel导入设计