我需要根据 SQL 查询结果进行验证。
查询被定义为注释 -在我的实体 bean 中作为@NamedQuery 。
根据 Hibernate 文档(doc),有可能在以下操作上验证 bean:
更新
前预插入
预删除
好像:
<hibernate-configuration>
<session-factory>
...
<event type="pre-update">
<listener class="org.hibernate.cfg.beanvalidation.BeanValidationEventListener"/>
</event>
<event type="pre-insert">
<listener class="org.hibernate.cfg.beanvalidation.BeanValidationEventListener"/>
</event>
<event type="pre-delete">
<listener class="org.hibernate.cfg.beanvalidation.BeanValidationEventListener"/>
</event>
</hibernate-configuration>
问题是如何将我的 bean与验证配置连接起来,如上所述。
更新:
实体类
...
@Entity
@NamedQuery(name = "isValutaKursExists", query = "SELECT id FROM CurrencyRate WHERE bankId = :bankNum")
@Table(name = "Currency")
public class Currency {
...