我有一个基于 Java 的 Web 应用程序,它大约有 7 年的历史,并且随着时间的推移而有机地增长。从历史上看,它一直是基于 mvc 的应用程序。用户过去常常使用基于标准 mvc 的验证(即 Struts)来输入数据。在某个地方,我们不得不使用 Drools 对来自其他来源的提要文件进行一些验证。基于 Drools 的验证运行良好。
然而,现在我们遇到了一个问题。MVC 中有一些验证,即 Struts。Drools 中有一些验证。虽然它们都在各自的领域工作得很好,但我们有重复的验证。此外,正如预期的那样,我们在一种情况下存在验证问题,而在另一种情况下则没有。当然,战术上的解决方法是我们很好地掌握所有验证,并确保任何传入的数据(无论是通过前端还是来自提要文件)都经过所有验证。它应该可以工作,但这是劳动密集型的并且容易出错。
我正在对该小组进行民意调查,以了解是否有一些战略解决方案。无论如何我可以将验证移动到单个存储库中,并让前端数据和提要数据都经过相同的验证?最简单的答案似乎是我将所有验证移至 Drools,并确保前端与 Drools 交互以执行所有验证。当然 Drools 正在处理 - 并将继续处理 - 所有基于提要的数据。我也知道 Drools - 也许 - 不打算以这种方式使用,因此不会成为我对来自基于 Web 的前端的数据进行任何验证的首选。
还有其他方法吗?你遇到过这个问题吗?如果是这样,您是否设法解决了这个问题?如果是这样,怎么做?
谢谢阅读。非常感谢您的任何回复。