1

我正在考虑验证我的 Web 应用程序。这是方法。1)使用 Spring Validator 实现接口进行验证 2)在域模型上使用 JSR-303。

第一种方法看起来更好,就像我可以使用消息在任何语言上呈现错误并且可以执行更复杂的逻辑。但是hibernate docs显示JSR-303比hibernate更可取,我想我已经用注释映射识别了我的实体,并为验证JSR 303投入了更多,它不会太多吗?如果可能的话,也许我应该在两者上都这样做。

你有什么建议?谢谢

4

1 回答 1

1

就个人而言,我认为 Web(或输入)验证与持久性验证非常不同。通常它们是相同的,但通常它们不会相同,除非您的应用程序只获取数据并放入数据库中,除了验证之外不做任何其他事情。

如果您将持久性和输入验证混合在一起,您的域模型将受到影响,因为您将尝试使其成为表示+域模型的混合体,并且其中一个的更改将影响另一个(再见,再见局部性)。

在一个非常简单的应用程序上或者如果您正在构建一个“裸对象”解决方案(在这种情况下,输入必须是域),混合验证可能是可以的。

于 2013-07-05T23:46:51.587 回答