这种类型的验证有效吗?
@Constraint(validatedBy = UniqueEmailValidator.class)
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD})
public @interface UniqueEmail {
public String message() default "Error message";
public Class<?>[] groups() default {};
public Class<? extends Payload>[] payload() default {};
}
@Component
public class UniqueEmailValidator implements ConstraintValidator<UniqueEmail, String> {
@Autowired
private UserRepository userRepository;
@Override
public boolean isValid(String value, ConstraintValidatorContext context) {
return userService.isEmailUnique(value); // read as a call to userRepository.findByEmail(emailAddress)
}
}
@Entity
public class User {
...
@UniqueEmail
private String email;
}
更新:
StackTrace的一部分:
java.lang.StackOverflowError: null
...
(many times)
...
UserService.isEmailUnique(UserService.java:84)
...
UniqueEmailValidator.isValid(UniqueEmailValidator.java:29)
UniqueEmailValidator.isValid(UniqueEmailValidator.java:13)
属性spring.jpa.properties.javax.persistence.validation.mode=none
可以解决这个问题。但它仍然不是双重验证
。
您不应该使用find with entities来检查电子邮件地址是否存在于
userService.isEmailUnique(value)
为什么不创建一个方法:
int countByEmail(String email)
问题内容: 我有一个简单的问题…我正在尝试使用切片在Golang中重现此递归数据结构。 现在,我在下面使用带有切片的递归数据结构的“粗糙”源代码,除了我输入的结构是结构而不是结构片之外,其他所有东西都可以正常工作。理想情况下,我希望类型化的递归数据结构是Trie的一部分,其中包含元素Trie {byte,[] Trie}。希望这有意义吗?现在,我有一个Trie struct {byte,[] Tr
本文向大家介绍数据结构 二叉树的递归与非递归,包括了数据结构 二叉树的递归与非递归的使用技巧和注意事项,需要的朋友参考一下 数据结构 二叉树的递归与非递归 实例代码: 先序遍历(递归法) 后序遍历 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
问题内容: 学习SQL,并有一些问题。我有2张桌子, 现在,我需要的是一个查询,该查询将基于标记要从哪个层次层次结构级别获取参数的参数,从每个层次结构级别返回表中的所有条目。 获取条目非常容易。 条目: 只是有父母的父母,而父母的父母是父母的父母,依此类推。这是我怀疑递归出现的地方。 有谁可以指导思想的吗? 问题答案: 您对第一级的查询(此处与表格区别)应如下所示: 请注意的正确用法(不要总是与进
问题 你想在一个函数中调用相同的函数。 解决方案 使用一个命名函数: ping = -> console.log "Pinged" setTimeout ping, 1000 若为未命名函数,则使用 @arguments.callee@: delay = 1000 setTimeout((-> console.log "Pinged" setTimeout arg
在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。 举个例子,我们来计算阶乘n! = 1 x 2 x 3 x ... x n,用函数fact(n)表示,可以看出: fact(n) = n! = 1 x 2 x 3 x ... x (n-1) x n = (n-1)! x n = fact(n-1) x n 所以,fact(n)可以表示为n x fact(n-1),