【问题标题】:Model class name has the same name as spring validation annotation模型类名与spring验证注解同名
【发布时间】:2016-12-06 08:12:09
【问题描述】:

我想使用@Email 注释验证我的项目中的电子邮件字段。但问题是我的模型类名称也是电子邮件。 因此它显示异常“电子邮件无法转换为注释”。 是否有任何解决方案(不更改类名)。

这是我的模型类:

public class Email implements EntityMarker{
 @NotEmpty
 @Email
 private String emailId;
 @NotEmpty
 @Size(max = 15, message = "Your name must be less than 15 characters")
 private String name;
}

【问题讨论】:

    标签: java hibernate-validator spring-validator


    【解决方案1】:

    @Emailvalidator 注解属于 hibernate-validator。

    当您只使用@Email 时,IDE 将无法判断这是 hibernate-validator 还是您的类名。

    所以像这样使用验证器:

    public class Email implements EntityMarker{ 
      @NotEmpty
      @org.hibernate.validator.constraints.Email
      private String emailId;
      ..//do whatever you want
    }
    

    如需使用@Email 注解,请在您的 pom.xml 文件中包含 hibernate-validator 依赖项。

    <!-- Hibernate -->
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-validator</artifactId>
        <version>5.1.1.Final</version>
    </dependency>
    

    如果有帮助请告诉我。

    【讨论】:

      猜你喜欢
      • 2017-04-10
      • 2023-03-03
      • 2011-04-08
      • 1970-01-01
      • 1970-01-01
      • 2016-11-07
      • 1970-01-01
      • 2011-06-13
      • 2012-08-27
      相关资源
      最近更新 更多