我有用户实体,它有gmailId属性。我想把gmail id必须以gmail.com结尾的条件。
我尝试使用正则表达式模式,但它给出了一个例外说明
在群组的持续时间[com.ciphercloud.ae.entities.Users]中验证失败[javax.validation.groups.Default,] 违反约束的清单:[ ConstraintViolationImpl {interpolatedMessage ='必须匹配" gmail.com"',propertyPath = gmailId,rootBeanClass = class com.ciphercloud.ae.entities.Users,messageTemplate =' {javax .validation.constraints.Pattern.message}'} ]
在hibernate中使用的注释是什么。我的用户实体定义类似于
@Entity
@Table(uniqueConstraints = @UniqueConstraint(columnNames = "gmailId"))
public class Users {
@Id
@GenericGenerator(name = "sequence_user_id", strategy = "com.ciphercloud.ae.generators.UserIdGenerator")
@GeneratedValue(generator = "sequence_user_id")
@Column(name = "id", insertable = false, updatable = false)
private String user_id;
@Pattern(regexp = "\gmail.com$")
private String gmailId;
private String role;
// all setters and getters
请建议我如何使用hibernate将gmailId的插入值以gmail.com结尾的条件????
答案 0 :(得分:0)
将正则表达式更改为如下工作正常。
@Pattern(regexp = ".*(@gmail.com)")
private String gmailId;