我如何在J2EE中devise文档validation组件?

我是一个.NET开发人员,他必须在Java-ee Web应用程序中开发这个组件:

  1. 用户将select一个文件
  2. 这将是一个Excel文件或XML文件
  3. 组件应该检查​​文件是否具有预定义的结构。 只有某些types的文件需要validation。 因此,使用XSD来处理XML文档,并为Excel文件定义一些结构。 如果有任何列名称,大小,值范围,数据types不匹配,报告和中止。
  4. 然后根据一组validation规则validation文档。 为此,我正在考虑构build一个XML文件/ SQL表,它具有需要针对此文档运行的方法列表来validation它。 报告所有exception,从每个方法返回值。
  5. 当开发人员想到新的validation时,他们会为某个类添加一个方法,并在XML / SQL表中引用此方法,以便组件在运行时拾取它们。

这是一个很好的计划,还是使用Spring或者其他一些高级的J2EEfunction(我从来没有用过,但需要学习)呢?

谢谢。

如果总是检查所有的阀值规则(并且没有必要以dynamic方式(数据库)禁用某些而不修改代码,则:

(4)和(5)我不会使用数据库。 相反,我会使用注释来标记validation方法以及添加元信息(例如错误消息)到这个方法。

如果你使用spring,那么我会用一个bean post处理器来实现这个。 或者,如果这是很多工作,我会有一个validation器接口(并且每个实现类有一个validation规则)(validation器类必须是无状态的)。 然后我将这个类作为spring bean(如果使用xmlconfiguration,则可以使用它们来启用/禁用规则)。 然后可以让spring注入每个validation器@Autowire List<ValidatorInterface> validators;

而是使用属性文件并在那里放置configuration。 在你的代码中读取属性并相应地进行validation

 allowed_filetype=xls,xml