Как настроить проверку для адреса электронной почты в объекте Java? - PullRequest
0 голосов
/ 11 ноября 2018

У меня есть класс ниже, который используется клиентом для настройки деталей электронной почты.Я предоставляю этот класс в банке клиенту.Я хочу настроить проверку на и тему.Будет иметь адрес электронной почты и тема не должны быть пустыми и максимальными.Можно ли установить проверку в нижеуказанном классе и выдать исключение, если не настроено в соответствии с требованиями.

Любая помощь приветствуется.

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);
        }
}

1 Ответ

0 голосов
/ 11 ноября 2018

для проверки адреса электронной почты вы можете использовать библиотеку commons-validator (зависимость от maven: <groupId>commons-validator</groupId><artifactId>commons-validator</artifactId>), класс EmailValidator (из пакета org.apache.commons.validator.routines)

EmailValidator.getInstance().isValid(toEmailAddress)

, в качестве другой опции вы можете использоватьhibernate-valitator путем аннотирования полей класса, таких как:

class EmailDetails {
    @Email
    @NotNull
    private String to;

    @NotNull
    @Max(100)
    private String subject;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...