2014-09-05 72 views
-1

我正在寻找一个好的设计的Excel工作表验证框架 的要求是这样的Excel的验证框架的设计JAVA

- Will be using Apache POI 
- Have around 500 types of columns (Headers) 
- There will be multiple templates (around 500) 
    in which each template will have a different set of columns. 
- There will be around 1000 - 2000 rows of data and can be viewed in any of the given 
    templates 

任何细胞的基本验证会像

-. cannot be null , 
-. cannot be zero , 
-. must be a number etc 

还可以有一些业务验证,如列A存在,则列B也必须存在。 这些业务验证可以链接到单个列,也可以链接到模板。 即在模板A中单元格A可以为空,但在模板B中不能为空 因此,我们应该能够覆盖模板中单元格的单独验证。

这些不能存储在Excel中,因为任何对验证的更改都必须复制到所有模板中。

我找了一个验证的设计架构中,这些验证规则可以集中存储,并且可以修改,添加新的等

感谢您的任何建议,方向等

+0

AFAIK没有这样的框架。另外,当我使用Excel文件验证时,我结束了在RAM('List','Map'或其他帮助我的结构)中加载必要的数据并在那里验证它,而不是从Apache POI的Workbook接口由于图书馆的记忆和时间问题。 – 2014-09-05 05:59:48

+0

即使我不知道任何这样的框架,你需要设计自己的架构,因为这种情况是特定于你的需要。我看到'Observer Pattern'在这里体面。 – guptakvgaurav 2014-09-05 06:05:31

回答

0

我得告诉你,你不会找到(最确定的)这样的框架。我目前正在处理几乎相同的任务。所以一般你需要的是:

  • 访问器(用于Excel文件) - > org.apache.poi
  • 解析器 - >可以访问者相结合,如果你的时间是不够的,但一般不是那么好主意
  • 验证逻辑 - >实现你自己的逻辑
  • 记者 - >您可以使用something like this

    干杯。

更新:

我没有说这将是容易的事。但实际上,您可以在那里重复使用很多库。我看到它的方式验证模块是最复杂和最耗时的。最重要的也是。

+0

我正在创建与您所说的内容相关的内容,但所花费的时间超出了整个项目的持续时间 – 2014-09-09 09:10:33

+0

请参阅更新。希望能帮助到你 – ekostadinov 2014-09-09 09:17:45