我想在特定方法中禁用hibernate验证。例如,保存正常保存的验证并禁用它们以saveWithoutValidation方法。是否可以使用某些注释来执行此操作?
我知道可以在具有以下属性的配置中禁用它:
<Validation-mode> NONE </ validation-mode>
我真的只是在带有@Valid注释的控制器上使用验证来表示错误。要插入数据库,我不需要。
我的有效解决方案:
LocalContainerEntityManagerFactoryBean factory = new LocalContainerEntityManagerFactoryBean();
...
Properties jpaProperties = new Properties();
jpaProperties.put("javax.persistence.validation.mode", "NONE");
factory.setJpaProperties(jpaProperties);
答案 0 :(得分:5)
尝试使用Validating Groups:
组允许您限制在此期间应用的约束集 验证。这使得例如向导之类的验证成为可能 在每个步骤中,只有指定的约束子集得到 验证。目标组作为var-args参数传递给 验证,
{"metadata":{"version":"1","transaction_id":"1:1362317376","status_code":401},"success":false,"errors":[{"error":{"code":"AGW-0210","message":"Api not allowed for this api key."}}]}
和validateProperty
。