Fórum [Dúvida] Validação. #477662

30/04/2014

0

Fala galera, beleza?

Galera, eu estou com uma dúvida, eu estou fazendo um trabalho na faculdade em que o professor solicitou dois campos na classe pai, sendo eles [Nome] e [Telefone], porem o Nome deve possuir a validação de não aceitar números, e o telefone a validação de não aceitar letras. Eu fiz o exercícios, mas fiz ele bem cru, utilizando if e switch case, mas vendo as aulas aqui no dev media, fiquei imaginando que essa não é uma boa prática. Minha dúvida é a seguinte, existe outro modo de fazer esse tipo de validação no JavaSE? Segue o código abaixo:

package br.me.apppessoa;

public class Pessoa extends Exception {
	private String nome;
	private String telefone;

	Pessoa(String nome, String telefone) throws Exception {
		setNome(nome);
		setTelefone(telefone);
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) throws Exception {
		int flag = 0;
		String restricao = "1234567890-=+_)(*&¨%$#@!´`[{]}~^:;><,./?";
		for (int i = 0; i < nome.length(); i++) {
			for (int j = 0; j < restricao.length(); j++) {
				if (nome.charAt(i) == restricao.charAt(j)) {
					flag = 1;
				}
			}
		}
		if (flag == 1) {
			throw new Exception();
		} else {
			this.nome = nome;
		}
	}

	public String getTelefone() {
		return telefone;
	}

	public void setTelefone(String telefone) throws Exception {
		int flag = 0;

		String restricao = "abcdefghijklmnopqrstuvxywz-";
		for (int i = 0; i < telefone.length(); i++) {
			for (int j = 0; j < restricao.length(); j++) {
				if (telefone.charAt(i) == restricao.charAt(j)) {
					flag = 1;
				}
			}
		}
		if (flag == 1) {
			throw new Exception();
		} else {
			this.telefone = telefone;
		}
	}
}
Fábio Carvalho

Fábio Carvalho

Responder

Posts

02/05/2014

Carlos Proença

Fala Fabio blz?

cara... rsrs depende muito da arquitetura da aplicação..... mas existem varias formas de se fazer validação... da uma pesquisada sobre bean validations...

e em regex com java..

voce vai gosta...

att.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar