Gente, tenho a seguinte duvida, na minha aplicação eu preciso colocar uma consição para que após o executeQuery(), no JDBC, eu aprenas prossiga com a impressão dos resultados se os registro dos campos estiver todo preenchido. Como faria isso? Guardo numa variável o meu VO e depois testo se é maior que zero?
Em que momento eu deveria fazer o teste? Após o execute?
Esse é meu código:
public List listar() throws SQLException{
CallableStatement callableStatement = null;
Connection con = null;
ResultSet rs = null;
List lista = new ArrayList();
MarcacaoVO marcacaoVO = null;
try{
con = super.getConnection();
callableStatement = con.prepareCall(SELECT);
rs = callableStatement.executeQuery();
//É nesse momento que eu deveria fazer a condição?
while(rs.next()){
marcacaoVO = new MarcacaoVO();
/////Campos que serão Apresentados (listados)/////
/////Campos Chave/////
marcacaoVO.setCodigoMarcacao(rs.getString("CD_MCCRPT"));
marcacaoVO.setEmpresa(rs.getInt("CD_EMPGCB"));
marcacaoVO.setMatricula(rs.getInt("CD_FUN"));
////Demais Atributos////
marcacaoVO.setTipoMarcacao(rs.getString("ST_MCCRPT").charAt(0));
marcacaoVO.setViaCracha(rs.getInt("CD_MCCRPT_VIA_CCH"));
marcacaoVO.setDataMarcacao(sqlDateTOutilDate(rs.getDate("DT_MCCRPT")));
marcacaoVO.setHoraMarcacao(sqlTimeTOutilDate(rs.getTime("HR_MCCRPT")));
marcacaoVO.setEmpresaRelogio(rs.getInt("CD_EMPGCB_RLG"));
marcacaoVO.setFilialRelogio(rs.getInt("CD_FIL_RLG"));
marcacaoVO.setStatusMarcacao(rs.getString("ST_MCCRPT_RFT").charAt(0));
marcacaoVO.setTipoCartao(rs.getInt("CD_MCCRPT_TIP_CRT"));
marcacaoVO.setEnviar(rs.getString("ST_MCCRPT_ENV").charAt(0));
marcacaoVO.setErro(rs.getString("ST_MCCRPT_ERR"));
marcacaoVO.setTransmissao(rs.getString("ST_MCCRPT_TRM").charAt(0));
lista.add(marcacaoVO);
}
} finally {
close(null, callableStatement, con);
}
return lista;
}
Valeu gente.