一尘不染

将Hibernate Validator与JPA和Spring结合使用

hibernate

我正在使用Hibernate Validator 4.0.2,Spring 3.0和Hibernate
3.3.2(据我所知,是JPA2之前的版本)作为JPA 1提供程序。

我发现将Validator集成到MVC层很容易(这是可行的),但是看不到如何将验证器自动集成到JPA entityManager(JPA 1)中。

基本上,我有一些实体将保留下来,但它们不是来自Web层,因此尚未经过验证。我想要一种通过验证器预持久运行它们的巧妙方法。

有一个简单的方法吗?我知道,如果我使用的是JPA 2提供程序(如发布时的Hibernate 3.5),它将几乎是自动的。那就是我要找的东西。


阅读 354

收藏
2020-06-20

共1个答案

一尘不染

您需要编写一个实体侦听器,并在上触发验证@PrePersist@PreUpdate甚至@PreRemove(有有效的用例)。有关
代码示例,请参见使用JPA 1.0进行Bean验证

2020-06-20