BeanValidation用于检查是否可以删除

时间:2013-07-23 06:45:24

标签: spring hibernate spring-mvc bean-validation

如何在删除前使用BeanValidation验证记录?例如,我只能在将来executeDate字段时删除记录。

我在项目中使用成功beanvalidation。它是基于配置的注释。我在Controller方法的@Valid注释中使用它。它是基于Spring的MVC应用程序。

我的环境:

<hibernate4.core.version>4.2.1.Final</hibernate4.core.version>
<spring.version>3.2.2.RELEASE</spring.version>
<hibernate.search.version>4.2.0.Final</hibernate.search.version>

编辑:
我已经看到了这个:hibernate validator - different groups on create, update, delete和Hibernate Documentation,但它对我来说并不清楚。 如果到目前为止我有验证工作,我只需要添加特殊情况进行删除吗?我很困惑我需要采取哪些步骤才能获得这一功能。

3 个答案:

答案 0 :(得分:1)

添加到您的持久性配置

<property name="javax.persistence.validation.group.pre-remov">MyDeleteGroup</property>

将此注释添加到日期字段

@Past(groups=MyDeleteGroup.class)

删除群组MyDeleteGroup只是一个标记界面,如javax.validation.groups.Default

答案 1 :(得分:0)

BeanValidation文档的

see this link

您可以为案例使用@Past注释

见第6.1节

<event type="pre-delete">
    <listener class="org.hibernate.cfg.beanvalidation.BeanValidationEventListener"/>
</event>

答案 2 :(得分:0)

对于Spring Boot用户:

application.yml

window.onscroll

application.proeprties

spring:
  jpa:
    properties:
      javax:
        persistence:
          validation:
            group:
             pre-remove: com.your_package.MyDeleteGroup