Pessoal, tudo bem?
Ao salvar um campo com máscara o mesmo está sendo salvo no banco com a mascara. Tem como deixar a mascara apenas
para edição e não salvar no banco?
Toda String tem o método replace.
No seu MB faça por exemplo. cnpj.replaceAll("\D", “”);
Se não me engano é replaceAll mesmo.
H
hmenon1989
Embora funcione, seria errado fazer assim na definição da classe?
public void setCnpj(String cnpj) {
this.cnpj = cnpj.replaceAll("\\.","").replaceAll("\\/","").replace("-","");
}
R
Rodrigo_Sasaki
hmenon1989:
Embora funcione, seria errado fazer assim na definição da classe?
public void setCnpj(String cnpj) {
this.cnpj = cnpj.replaceAll("\\.","").replaceAll("\\/","").replace("-","");
}
O sistema é seu, fica a seu critério saber até onde isso impacta, agora que replace doido é esse? Por que não usa o do Hébert? Vai ter o mesmo resultado.
H
Hebert_Coelho
hmenon1989:
Embora funcione, seria errado fazer assim na definição da classe?
public void setCnpj(String cnpj) {
this.cnpj = cnpj.replaceAll("\\.","").replaceAll("\\/","").replace("-","");
}
Eu só dei uma solução, vc encontrou outra e podem existir diversas outras por ae. [=
Concordo com o digão quando ele fala que a outra é melhor, fica mais legível.
O problema é que ela utiliza regex, então a pessoa que der manutenção, tem que saber oq é. [=
H
hmenon1989
Hebert Coelho:
hmenon1989:
Embora funcione, seria errado fazer assim na definição da classe?
public void setCnpj(String cnpj) {
this.cnpj = cnpj.replaceAll("\\.","").replaceAll("\\/","").replace("-","");
}
Eu só dei uma solução, vc encontrou outra e podem existir diversas outras por ae. [=
Concordo com o digão quando ele fala que a outra é melhor, fica mais legível.
O problema é que ela utiliza regex, então a pessoa que der manutenção, tem que saber oq é. [=
Beleza, entendi. O que eu quis enfocar foi colocar no set ao invés de no MB não a forma de fazer o replace em si, pois vou usar essa sugestão mesmo: cnpj.replaceAll("\D", “”),
pois é mais legivel; e a que coloquei tá doidona.