簡體   English   中英

如何在Java對象中設置電子郵件地址的驗證?

[英]how to setup validation for email address in java object?

我有以下課程,客戶可用來設置電子郵件詳細信息。 我在罐子里提供這個類給客戶。 我想對主題進行驗證。 To將擁有一個電子郵件地址,主題不得為null,且不得超過max。 如果未按要求進行設置,是否可以在下面的類中設置驗證並引發異常。

任何幫助表示贊賞。

class EmailDetails{

    private String to;
    private String subject;

    public String getTo(){
       return this.to;
    }

    public String getSubject(){
       return this.subject;
    }

    private EmailDetails(EmailDetailsBuilder builder) {
        this.to=builder.to;
        this.subject=builder.subject;
   }

   public static class EmailDetailsBuilder{

        // required parameters
        private String to;
        private String subject;

        public EmailDetailsBuilder(String to, String subject){
            this.to=to;
            this.subject=subject;
        }

        public EmailDetailsBuilder setTo(String to) {
            this.to = to;
            return this;
        }

        public EmailDetailsBuilder setSubject(String subject) {
            this.subject = subject;
            return this;
        }

        public EmailDetails build(){
            return new EmailDetails(this);
        }
}

要驗證電子郵件地址,可以使用commons-validator庫(maven依賴項: <groupId>commons-validator</groupId><artifactId>commons-validator</artifactId> ),類EmailValidator (來自org.apache.commons.validator.routines包) org.apache.commons.validator.routines

EmailValidator.getInstance().isValid(toEmailAddress)

作為另一種選擇,您可以通過注釋類字段來使用hibernate-valitator ,如下所示:

class EmailDetails {
    @Email
    @NotNull
    private String to;

    @NotNull
    @Max(100)
    private String subject;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM