Olá Senhores,
Estou com o seguinte problema. Após rodar uma query um dos meus campos retorna null, até ai tudo bem estou tentando fazer o tratamento da seguinte forma:
String dscEscolaridade = (String) (rs.getString(“DSC_ESCOLARIDADE”).equals(null)?"":rs.getString(“DSC_ESCOLARIDADE”));
para quem não entende este código, o mesmo é similar ao if
if (xxx.null)
dscEscolaridade = “”;
else
dscEscolaridade = rs.getString…
A conexão está ok, url = “jdbc:odbc:DB_ESCOLA”, ou seja está tudo bem até chegar ao código acima.
Como faço o tratamento de um campo com o valor null oriundo de uma query?
Erro: url = java.lang.NullPointerException
desde já
obrigado.
Em vez de
String dscEscolaridade = (String) (rs.getString("DSC_ESCOLARIDADE").equals(null)?"":rs.getString("DSC_ESCOLARIDADE"));
use:
String dscEscolaridade = rs.getString ("DSC_ESCOLARIDADE");
if (dscEscolaridade == null) dscEscolaridade = "";
Ou melhor ainda, como essa situação provavelmente se repete no seu código, use algo como:
public static String ifNullEmpty (String s) {
if (s == null) return ""; else return s;
}
...
String dscEscolaridade = ifNullEmpty (rs.getString ("DSC_ESCOLARIDADE"));
Estes códigos já foram tentados. Na verdade o problema tem origem quando eu pego o valor rs.getString(“VALORQUALQUER”) e atribuo em um campo qualquer. Por que há esse proglema? alguém sabe?
André Luiz
Galera existe um tratamento para o null?
André Luiz
Como assim?
if (objeto == null)
não serve?
Serve sim, porém eu ja mudei tanto este código que já estou até com dor de cabeça.
Agora ficou assim:
dscDocumentos = (dscDocumentos==null?"":dscDocumentos);
dscEscolaridade = (dscEscolaridade==null?"":dscEscolaridade);
está funcionando até o presente momento.
André Luiz
Vou sair um momento, tenho que reiniciar. Já volto.
obrigado pela ajuda.
André Luiz
Ó código funcionou corretamente fazendo desta forma
String dscDocumentos = rs.getString(“DSC_DOCUMENTOS”); pegar o dado do banco e colocar em uma variável
dscDocumentos = (dscDocumentos==null?"":dscDocumentos); testar o null
c.setDocumentos(dscDocumentos); colocar no objeto
André Luiz