2010-02-16 64 views
5

NetBeans允許我在JPA驗證策略的三個值之間進行選擇:自動,回調和無。 「自動」是什麼意思? 「回調」是指使用@PrePersist,@PreUpdate和@PreRemove?JPA驗證策略

如果我不使用自動或回調,如果沒有驗證執行,是否有性能問題?

回答

7

JPA 2.0規範(JSR 317)不需要Bean驗證(JSR-303)實現。驗證是可選的。因此,javax.persistence.ValidationMode可以採取不同的值:

  • Auto(缺省) - 如果驗證提供商可用,則驗證應該發生
  • Callback - 需要驗證,並且如果不能獲得一個提供者的PersistenceException必須拋出
  • None - 沒有驗證應該嘗試和缺乏驗證提供商不應導致異常

這應該回答你所有的問題。

+0

根據[http://goo.gl/d8L0O](http://goo.gl/d8L0O)和[規範,章節3.6.1.1](http://download.oracle.com/otndocs/ jcp/persistence-2.0-fr-eval-oth-JSpec /)這三個值都應該是CAPS。 –